Convert a list to a joined string of ints?

后端 未结 2 858
猫巷女王i
猫巷女王i 2020-12-16 14:51

I have an int array with the value 3,99,6. How do i convert the array into the string 3,99,6 with linq?

相关标签:
2条回答
  • 2020-12-16 15:10
    int[] list = new [] {3, 99, 6};
    string s = string.Join(",", list.Select(x => x.ToString()).ToArray());
    

    Edit, C# 4.0

    With C# 4.0, there is another overload of string.Join, which finally allows passing an IEnumerable<string> or IEnumerable<T> directly. There is no need to create an Array, and there is also no need to call ToString(), which is called implicitly:

    string s = string.Join(",", list);
    

    With explicit formatting to string:

    string s = string.Join(",", list.Select(x => x.ToString(/*...*/));
    
    0 讨论(0)
  • 2020-12-16 15:11

    Stefan's solution is correct, and pretty much required for .NET 3.5. In .NET 4, there's an overload of String.Join which takes an IEnumerable<string> so you can use:

    string s = string.Join(",", list.Select(x => x.ToString());
    

    or even just:

    string s = string.Join(",", list);
    
    0 讨论(0)
提交回复
热议问题