分类目录

链接

2012 年 7 月
 1
2345678
9101112131415
16171819202122
23242526272829
3031  

近期文章

热门标签

新人福利,免费薅羊毛

现在位置:    首页 > .NET > 正文
.NET泛型中的ForEach扩展方法源码
.NET 评论(2) 阅读(3,792)

今天在使用ForEach的时候,不知道内部是用的FOR还是ForEach,于是想看看它的源码实现,

F12找到地址,

#region 程序集 mscorlib.dll, v4.0.30319
// C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\mscorlib.dll
#endregion

打开后发现,空空如也!!如图:

 

于是就动手简单写了下,理解应该是用的FOREACH,如下:

  1.         /// <summary>
  2.         /// Each,ForEach,叫什么无所谓了
  3.         /// </summary>
  4.         public static void Each<T>(this IList<T> t,Action<T> action)
  5.         {
  6.             foreach (T i in t)
  7.             {
  8.                  action(i);
  9.             }
  10.         }

 

简单测试下,没问题:

  1.   static void Main(string[] args)
  2.         {
  3.             List<int> intArry = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
  4.             intArry.Each((int i) => { Console.WriteLine(i.ToString()); });
  5.             Console.Read();
  6.         }

 

小小的DEMO,完了!

============ 欢迎各位老板打赏~ ===========

本文版权归Bruce's Blog所有,转载引用请完整注明以下信息:
本文作者:Bruce
本文地址:.NET泛型中的ForEach扩展方法源码 | Bruce's Blog

.NET泛型中的ForEach扩展方法源码:目前有2 条留言

  1. 数据库之家 : 2012年07月09日下午 12:12 回复

    怀念曾经写DEMO的日子!

  2. 数据库之家 : 2012年07月09日下午 12:18 回复

    以下引自MSDN
    ——————
    与传统的 foreach 循环相比,LINQ 查询具有三大优势:

    1.它们更简明、更易读,尤其在筛选多个条件时。

    2.它们使用最少的应用程序代码提供强大的筛选、排序和分组功能。

    3.无需修改或只需做很小的修改即可将它们移植到其他数据源。

发表评论

留言无头像?