当前位置:  开发笔记 > 编程语言 > 正文

什么是Perl重复运算符的C#等价物?

如何解决《什么是Perl重复运算符的C#等价物?》经验,为你挑选了3个好方法。



1> Marc Gravell..:

这取决于你需要什么... new string('a',3)例如.

用于处理字符串; 你可以循环...不是很有趣,但它会工作.

使用3.5,你可以使用Enumerable.Repeat("a",3),但这会给你一系列字符串,而不是复合字符串.

如果您打算使用它,可以使用定制的C#3.0扩展方法:

    static void Main()
    {
        string foo = "foo";
        string bar = foo.Repeat(3);
    }
    // stuff this bit away in some class library somewhere...
    static string Repeat(this string value, int count)
    {
        if (count < 0) throw new ArgumentOutOfRangeException("count");
        if (string.IsNullOrEmpty(value)) return value; // GIGO            
        if (count == 0) return "";
        StringBuilder sb = new StringBuilder(value.Length * count);
        for (int i = 0; i < count; i++)
        {
            sb.Append(value);
        }
        return sb.ToString();
    }



2> GeekyMonkey..:

如果您只需要重复单个字符(如您的示例中所示),那么这将起作用:

Console.WriteLine(new string('a', 3))



3> Binoj Antony..:

好吧,在所有版本的.NET中重复一个字符串,你总是可以这样做

public static string Repeat(string value, int count)
{
  return new StringBuilder().Insert(0, value, count).ToString();
}

推荐阅读
个性2402852463
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有