我想将List<string>
转换为List<int>
这是我的List<string>
:
string text = System.IO.File.ReadAllText("versengok.txt");
List<string> stringname = new List<string>(text.Split(','));
答案 0 :(得分:4)
列表有一个ConvertAll
方法。
var intList = stringname.ConvertAll(int.Parse);
答案 1 :(得分:0)
假设列表中的字符串包含有效的整数:
var integers = stringname.Select(x => int.Parse(x)).ToList();
如果字符串不是有效整数而是其他东西,那么你必须详细说明你的期望。虽然一般来说,在1对1转换中,转换逻辑(无论可能是什么)应该最有可能放在Select()
内的lambda中。
答案 2 :(得分:0)
这应该有效:
List<int> intList = stringname.Select(x=>Convert.ToInt32(x)).ToList();
答案 3 :(得分:0)
如果您不想使用任何库函数,请遍历StringList中的所有项并将它们转换为IntegerList:
List<int> Convert(List<string> stringList)
{
List<int> intList = new List<int>();
foreach (String str in stringList)
{
intList.Add(int.Parse(str));
}
return intList;
}
答案 4 :(得分:0)
试试这个:
string text = "1,2,3,4,5,5";
List<int> intArr = new List<int>();
text.Split(',').ToList().ForEach(item =>
{
int x = Convert.ToInt32(item);
intArr.Add(x == null ? 0 : x);
});