我不知道为什么foreach语句不将值添加到列表中,帮助
foreach (var item in blocklines)
{
if (item.Contains(','))
{
List<double> xyz = item.Split(',').Select(double.Parse).ToList();
}
}
答案 0 :(得分:1)
循环的每次迭代都将创建一个新列表,对其不执行任何操作,并使其超出范围。如果相反,您希望在循环的每次迭代中都修改一个列表,然后在循环后可以对其进行观察,则首先仅创建一个 列表,然后在循环中对其进行修改:
List<double> xyz = new List<double>();
foreach (var item in blocklines)
{
if (item.Contains(','))
{
xyz.AddRange(item.Split(',').Select(double.Parse).ToList());
}
}
// xyz is now avaiable here