将逗号分隔的数字串转换为List <int>?</int>

时间:2012-01-05 20:16:56

标签: c# string split

  

可能重复:
  Split string, convert ToList<int>() in one line
  Convert comma separated string of ints to int array

我有一个字符串: string test = "1,2,3,4";

是否有更简单的方法(语法上)将其转换为List<int>等效于这样的内容:

string[] testsplit  = test.Split(',');
List<int> intTest = new List<int>();
foreach(string s in testsplit)
    intTest.Add(int.Parse(s));

4 个答案:

答案 0 :(得分:9)

你可以抛出LINQ:

List<int> intTest = test.Split(',').Select(int.Parse).ToList();

首先拆分字符串,然后解析每个部分(返回IEnumerable<int>),最后从整数序列构造一个列表。

答案 1 :(得分:1)

var result = test.Split(',').Select(x => int.Parse(x));

或者,如果您真的需要List<int>(而不是任何IEnumerable<int>),请附加.ToList()

答案 2 :(得分:1)

test.Split(',').Select(x => int.Parse(x)).ToList()

答案 3 :(得分:0)

Linq可以让它更清洁一点:

var intTest = test.Split(',').Select(s=>int.Parse(s)).ToList();