从Int数组转换为字符串数组

Inf*_*nd' 27 .net c# linq arrays linq-to-objects

当我将整数数组转换为字符串数组时,我使用for循环以较长的方式进行,如下面的示例代码中所述.这有简写吗?

现有的问题和答案SO大约int[]string(不string[]).所以他们没有帮助.

虽然我发现这个将一个int数组转换为一个String数组的答案,但该平台是Java而不是C#.同样的方法无法实现!

        int[] intarray =  { 198, 200, 354, 14, 540 };
        Array.Sort(intarray);
        string[] stringarray = { string.Empty, string.Empty, string.Empty, string.Empty, string.Empty};

        for (int i = 0; i < intarray.Length; i++)
        {
            stringarray[i] = intarray[i].ToString();
        }
Run Code Online (Sandbox Code Playgroud)

Til*_*lak 68

int[] intarray = { 1, 2, 3, 4, 5 };
string[] result = intarray.Select(x=>x.ToString()).ToArray();
Run Code Online (Sandbox Code Playgroud)


Rol*_*n C 11

尝试Array.ConvertAll

int[] myInts = { 1, 2, 3, 4, 5 };

string[] result = Array.ConvertAll(myInts, x=>x.ToString());
Run Code Online (Sandbox Code Playgroud)

  • 没有"使用System.Data.Linq;"的方法做到这一点 这是要求但是比实际需要更大的锤子. (3认同)

Vis*_*har 5

干得好:

Linq版本:

String.Join(",", new List<int>(array).ConvertAll(i => i.ToString()).ToArray());
Run Code Online (Sandbox Code Playgroud)

简单的一个:

string[] stringArray = intArray.Select(i => i.ToString()).ToArray();
Run Code Online (Sandbox Code Playgroud)