从另一个列表创建列表

让我们说:

class Plus5 { Plus5(int i) { i+5; } } List initialList = [0,1,2,3] 

我如何从initialList创建另一个为initialList的每个元素调用Plus5()构造函数的列表。 比什么更好?

 List newList = new List(); initialList.ForEach( i => newList.Add(Plus5(int))); 

我如何从initialList创建另一个为initialList的每个元素调用Plus5()构造函数的列表?

所以结果是List newList ,你想为Plus5中的每个int创建一个新的initialList

 List newList = initialList.Select(i => new Plus5(i)).ToList(); 

如果你想微优化(节省内存):

 List newList = new List(initialList.Count); newList.AddRange(initialList.Select(i => new Plus5(i))); 

使用LINQ为列表中的每个数字添加5。

 var result = initialList.Select(x => x + 5); 

你可以使用LINQ作为roughnex提到的。

 var result = initialList.Select(x => x + 5).ToList(); 

如果你有一个方法(如Plus5),它会是这样的

 int Plus5(int i) { return I + 5; } var result = initialList.Select(Plus5).ToList(); 
 List result = new List(InitialList.Select(x=>new Plus5(x)).ToList()));