带委托的方法的使用

 1 class Program
 2     {
 3         static void Main(string[] args)
 4         {
 5             string[] names = { "Burke", "Connor", "Frank", "Everett", "Albert", "George", "Harris", "David" };
 6 
 7             //使用yield ruturn的解决方案。
 8             var namesFive = GetFiveName(names);
 9 
10             foreach (var n in namesFive)
11             {
12                 Console.WriteLine(n);
13             }
14 
15 
16             foreach (string item in namesFive)
17             {
18                 Console.WriteLine(item);
19             }
20 
21         }
22 
23         //老式的做法
24         //private static IEnumerable GetFiveName(string[] ts)
25         //{
26         //    List<string> fiveNames = new List<string>();
27         //    foreach (var item in ts)
28         //    {
29         //        if (item.Length == 5)
30         //        {
31         //            fiveNames.Add(item);
32         //            //yield return item;
33         //        }
34         //    }
35         //    return fiveNames;
36         //}
37 
38         private static IEnumerable GetFiveName(string[] ts)
39         {
40             foreach (var item in ts)
41             {
42                 if (item.Length == 5)
43                 {
44                     yield return item;
45                 }
46             }
47         }
48     }

 

posted @ 2018-11-10 15:46  冬夜的火  阅读(146)  评论(0编辑  收藏  举报