我的代码如下:

public void ReadListItem()
{
     List<uint> lst = new List<uint>() { 1, 2, 3, 4, 5 };
     string str = string.Empty;
     foreach (var item in lst)
         str = str + item + ",";

     str = str.Remove(str.Length - 1);
     Console.WriteLine(str);
}

输出:1、2、3、4、5所示

将List<uint>转换为逗号分隔的字符串的最简单方法是什么?


当前回答

如果你有一个int型的集合:

List<int> customerIds= new List<int>() { 1,2,3,3,4,5,6,7,8,9 };  

你可以用字符串。Join得到一个字符串:

var result = String.Join(",", customerIds);

享受吧!

其他回答

使用字符串。加入:

string.Join<string>(",", lst);

使用LINQ聚合:

lst .Aggregate((a, x) => a + "," + x);

你可以像这样用逗号分隔列表实体:

//phones is a list of PhoneModel
var phoneNumbers = phones.Select(m => m.PhoneNumber)    
                    .Aggregate(new StringBuilder(),
                        (current, next) => current.Append(next).Append(" , ")).ToString();

// Remove the trailing comma and space
if (phoneNumbers.Length > 1)
    phoneNumbers = phoneNumbers.Remove(phoneNumbers.Length - 2, 2);

你可以使用google-collections.jar,它有一个名为Joiner的实用程序类:

String commaSepString = Joiner.on(",").join(lst);

或者你可以使用StringUtils类,它有一个叫做join的函数。要使用StringUtils类,您需要使用common-lang3.jar

String commaSepString=StringUtils.join(lst, ',');

请参考此链接将集合转换为逗号分隔的字符串

你可以使用字符串。如果你使用的是。net框架> 4.0,请加入。

var result= String.Join(",", yourList);

享受吧!

Console.WriteLine(String.Join(",", new List<uint> { 1, 2, 3, 4, 5 }));

第一个参数:"," 第二个参数:new List<uint> {1,2,3,4,5})

字符串。Join将一个列表作为第二个参数,并使用作为第一个参数传递的字符串将所有元素连接到一个字符串中。