处理类似的事情时,List<string>您可以写下以下内容:
list.ForEach(x => Console.WriteLine(x));
Run Code Online (Sandbox Code Playgroud)
或者您可以使用方法组执行相同的操作:
list.ForEach(Console.WriteLine);
Run Code Online (Sandbox Code Playgroud)
我更喜欢第二行代码,因为它对我来说看起来更干净,但这有什么好处吗?
我发现了一些非常奇怪的东西,我希望能更好地理解.
var all = new List<int[]>{
new int[]{1,2,3},
new int[]{4,5,6},
new int[]{7,8,9}
};
all.ForEach(n => n.ForEach(i => Console.WriteLine(i)));
Run Code Online (Sandbox Code Playgroud)
可以改写为:
...
all.ForEach(n => n.ForEach(Console.WriteLine));
Run Code Online (Sandbox Code Playgroud)
如何省略lambda表达式参数(i =>)并仍然将当前项传递给console.WriteLine?
感谢您的任何见解.-Keith