有没有一种优雅的 linqy 方式来做到这一点?
我想要做的是创建给定长度的字符串,由另一个字符串的倍数组成,直到该长度
因此,对于长度 - 9 和输入字符串“xxx”,我得到“xxxxxxxxx”(即长度 9)
对于非整数倍,我想截断该行。
我可以使用循环和 StringBuilder 轻松地做到这一点,但我想看看该语言是否可以轻松地表达这个想法。
(仅供引用,我正在为我儿子做复活节数学作业)
最佳答案
不,没有什么简单和优雅的 - 你基本上必须自己编写代码。
您可以构造一个包含多个重复字符的字符串,但不能是重复的字符串, 即
string s = new string("#", 6); // s = "######"
要对字符串执行此操作,您需要一个循环来连接它们,最简单的方法是使用子字符串截断到所需的最终长度 - 如下所示:
string FillString(string text, int count)
{
StringBuilder s = new StringBuilder();
for(int i = 0; i <= count / text.Length; i++)
s.Add(text);
return(s.ToString().Substring(count));
}
关于c# - basic 中 string$ 的 C# 等价物是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2649245/