将逗号分隔的整数列表转换为数组

时间:2013-11-04 03:29:03

标签: c# arrays initialization

我正在尝试使用包含逗号分隔数字列表的字符串初始化一个int数组。

我试图直接将字符串分配给数组,

string sizes = "2,10,65,10"; 
int[] cols = new int[] { sizes };

但显然失败了:

  

无法将类型'string'隐式转换为'int'

如何将字符串转换为整数序列?

1 个答案:

答案 0 :(得分:4)

你想要一条线?使用LINQ:

int[] cols = sizes.Split(',').Select(x => int.Parse(x)).ToArray();

在文件顶部添加using System.Linq;以使其正常工作。

如果没有LINQ,你需要一个循环:

var source = sizes.Split(',');
var cols = new int[source.Length];
for(int i = 0; i < source.Length; i++)
{
    cols[i] = int.Parse(source[i]);
}