可能重复:
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));
答案 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();