如何使用 LINQ 替换列表中的嵌套值范围
本文关键字:嵌套 范围 列表 何使用 LINQ 替换 | 更新日期: 2023-09-27 18:32:53
我可能没有正确措辞这个问题,所以请帮助我命名。
如果我有一个List<Point>
,它具有一组常量的x
值,但具有y
值的可变流。 现在我有:
List<DataPoint> points = new List<DataPoint>();
while(...)
{
double data[] = ...
for (int i = 0; i < data.Length; i++)
points.Add(new DataPoint(i, data[i]));
}
但我觉得应该可以使用 LINQ:
points.Select(y => y.AddRange(data));
我不需要更改x
值。 另外,我问是因为我试图以某种方式提高这个循环的处理性能,所以如果有更快的方法,请启发我。
可以使用
Linq 创建要添加的所有值,然后使用 AddRange
。
var newPoints = data.Select((d,i) => new DataPoint(i, d));
points.AddRange(newPoints);
但请注意,这可能不会比您的for
循环快。