使用Linq创建一个长度为10的两个字母的序列

时间:2016-11-05 00:35:18

标签: c# string linq

我一直在尝试根据长度创建两个字母的序列。我知道在python Strings of two letters and fixed length中已经提出了类似的问题,但它略有不同。

[编辑]

实施例 abababababa是一个字符串序列a,b和固定长度11

我提出了这个快速解决方案,但我觉得有一个更聪明的方法来做到这一点。固定长度可以是偶数或奇数。例如,

RSAPrivateCrtKey asCrt = (RSAPrivateCrtKey) priv;
System.out.printf("%s, %d bits%n", asCrt.getAlgorithm(), asCrt.getModulus().bitLength());
System.out.printf("  modulus: %d%n", asCrt.getModulus());
System.out.printf("  private exponent: %d%n", asCrt.getPrivateExponent());

我如何实现这一目标?

3 个答案:

答案 0 :(得分:2)

我仍然不能100%确定我明白你在问什么。但是,根据你到目前为止所写的内容,我认为这会做你想要的:

string Repeat(string input, int length)
{
    return new string(
        Enumerable.Range(0, length).Select(i => input[i % length]).ToArray());
}

叫做:

string result = Repeat("ab", 10);

答案 1 :(得分:2)

&#34;最佳&#34;可能是<% @user.chores.each do |chore| %> <li><%= chore.name %></li> <% end %> <% @user.chorelists.each do |chorelist| %> <li><%= chorelist.day %></li> <% end %> char[]的{​​{1}}循环, 但这里有一些较短的方法:

StringBuilder

答案 2 :(得分:0)

是你想要的吗?我很困惑。

string b = String.Concat(Enumerable.Repeat(String.Concat("a", "b"), 5));