Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/274.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将列表中的每个元素修改为新列表?_C#_List_Foreach - Fatal编程技术网

C# 如何将列表中的每个元素修改为新列表?

C# 如何将列表中的每个元素修改为新列表?,c#,list,foreach,C#,List,Foreach,我想学习如何使用=>或ForEach或其他方法执行以下代码。它基本上获取列表1的所有元素,对其进行修改,然后将其存储到新的列表2中。列表1没有改变 //List1 exists from before List<string> List2 = new List<string>(); foreach (element in List1) { List2.Add(element + " concact string"); } 有没有一种更简洁易读

我想学习如何使用=>或ForEach或其他方法执行以下代码。它基本上获取列表1的所有元素,对其进行修改,然后将其存储到新的列表2中。列表1没有改变

//List1 exists from before
List<string> List2 = new List<string>();
foreach (element in List1)
{
    List2.Add(element + " concact string");
}
有没有一种更简洁易读的方法来编写此代码?

使用扩展方法,可以从列表1中选择每个项目,对其进行修改,并将结果作为新列表返回:

 var newList = List1.Select(x => x.Concat(" concact string")).ToList();

var List2=List1.Selectelement=>element+concat string.ToList;这里的“Select”方法的参数称为Lambda表达式?是的,您可以阅读有关它们的更多信息
List<string> List2 = List1.Select(element => element + " concat string").ToList();