【问题标题】:how add the list of strings into string using linq?如何使用 linq 将字符串列表添加到字符串中?
【发布时间】:2011-06-16 10:20:12
【问题描述】:

我的列表由{"a","b","c"} 组成,我有字符串包含{"alphabets"}。我喜欢将列表添加到字符串中。我需要像这样`{“alphabetsabc”}这样的s中的最终输出。我喜欢用 linq 来做这件事。

【问题讨论】:

    标签: c# linq string list


    【解决方案1】:

    在这种情况下,使用 LINQ 或什至 Join 将是矫枉过正。 Concat 会做得很好:

    string s = "alphabets";
    var list = new List<string> { "a", "b", "c" };
    
    string result = s + string.Concat(list);
    

    (请注意,如果您不使用 .NET4,则需要改用 string.Concat(list.ToArray())。在早期版本中不存在采用 IEnumerable&lt;T&gt;Concat 的重载。)

    【讨论】:

      【解决方案2】:

      为什么不只是string.Join?使用 Linq 会有点过头了。

      【讨论】:

      • 当你可以使用 Concat 时,Join 本身就太过分了!
      【解决方案3】:

      又快又脏:

      List<string> list = new List<string>() {"a", "b", "c"};
      string s = "alphabets";
      
      string output = s + string.Join("", list.ToArray());
      

      【讨论】:

      • 在 .NET4 中,他们最终为 string.Join 添加了一个重载,该重载采用 IEnumerable 字符串。因此 .ToArray 将是多余的。
      • 在这种情况下使用 Join 是多余的。 Concat 有什么问题? msdn.microsoft.com/en-us/library/system.string.concat.aspx
      • Concat 没什么问题,我首先想到的是加入 :)
      【解决方案4】:

      如果你真的想要使用 LINQ,你需要 Aggregate 方法。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-07-28
        • 2022-06-12
        • 2020-03-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多