【问题标题】:LINQ: String.Join a list but add a character to that string beforehandLINQ:String.Join 一个列表,但事先向该字符串添加一个字符
【发布时间】:2011-09-10 07:29:31
【问题描述】:

我有以下清单:

  • 阿尔法
  • 测试版
  • 查理
  • 三角洲

我想将这些字符串变成一个字符串,用逗号分隔,但我想先给它们添加一个字符(@ 符号)。最终结果应该是:@alpha,@beta,@charlie,@delta

我现在拥有的是一种非 LINQ 方法,但它看起来并不“干净”:

String.Concat("@", String.Join(",@", mylist));

【问题讨论】:

    标签: c# linq list string concat


    【解决方案1】:
    string.Join(",", mylist.Select(s => "@" + s));
    

    【讨论】:

    • 这比 OP 的 String.Concat 效率低很多,因为除了由 string.Join 完成的字符串构建之外,它还需要为列表中的每个元素构建一个新字符串(和 GC 它)。
    猜你喜欢
    • 1970-01-01
    • 2022-07-27
    • 2020-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    • 1970-01-01
    相关资源
    最近更新 更多