c#one liner for .ToString()遍及整个数组

时间:2009-05-14 03:21:26

标签: c# shortcut

我觉得愚蠢的问题,但是必须有一个衬垫在c#中执行与下面相同或近似相同的代码...所以你能告诉我它是什么吗?

    public static string[] ToStringArray(int[] i)
    {
        if (i==null) return null;
        string[] result = new string[i.Length];
        for (int n= 0; n< result.Length; n++)
            result[n] = i[n].ToString();
        return result;
    }

4 个答案:

答案 0 :(得分:10)

扩展方法怎么样?

public static string[] ToStringArray<T>(this IEnumerable<T> items)
{
    return items.Select(i => i.ToString()).ToArray();
}

答案 1 :(得分:9)

使用LINQ:

int[] ints = { 1, 2, 3 };

string[] strings = ints.Select(i => i.ToString()).ToArray();

答案 2 :(得分:2)

使用LINQ:

(from x in i select x.ToString()).ToArray()

答案 3 :(得分:1)


int[] x = new int[] {1,2,3};
string[] y = Array.ConvertAll(x, intArg => intArg.ToString());