为什么.net c#缺乏“每一个”

时间:2011-02-28 12:06:37

标签: c# .net

  

可能重复:
  is there a .Each() (or .ForEach() ) iterator in the .Net standard library?

也许我错了,但我没有在.net(3.0)中看到“EACH”功能?

我们可以

IEnumerable<T>.Select().Where().First().Any()

为什么我们没有

IEnumberable<T>.Each(Action<T> action)

所以不是2行: Foreach(T t in list) action(t);

我们可以打电话 list.Each((t)=>{blah;blah;})

是否担心表现?

3 个答案:

答案 0 :(得分:2)

答案 1 :(得分:1)

答案 2 :(得分:0)

这是以这种方式进行的,因为IEnumerable上的任何一种扩展方法都没有任何副作用,而ForEach会产生副作用,因为它是主要目标。

有人认为foreach循环写得不够冗长。