zoukankan      html  css  js  c++  java
  • C#通过 “枚举数支持在指定类型的集合上进行简单迭代” 的概念获取List的一种方式

     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 
     5 namespace myMethod
     6 {
     7     class Animal
     8     {
     9         public string typeName = "";
    10         public Animal(string typeName)
    11         {
    12             this.typeName = typeName;
    13         }
    14     }
    15 
    16     class Person : Animal
    17     {
    18         public Person(string typeName)
    19             : base(typeName)
    20         {
    21 
    22         }
    23     }
    24 
    25     class Cat : Animal
    26     {
    27         public Cat(string typeName)
    28             : base(typeName)
    29         {
    30 
    31         }
    32     }
    33 
    34     class lgs
    35     {
    36         static void Main()
    37         {
    38             List<Animal> list = GetAnimlList();
    39 
    40             var itor = list.GetEnumerator();
    41             while (itor.MoveNext())
    42             {
    43                 Console.WriteLine(itor.Current.typeName);
    44             }
    45 
    46             Console.ReadKey();
    47         }
    48 
    49         static List<Animal> GetAnimlList()
    50         {
    51             IEnumerable<Animal> config = null;
    52             config = GetAnimalConfig();
    53             return null == config ? null : config.ToList();  //改方法为Enumerable类的一个扩展方法,所在的命名空间:System.Linq
    54         }
    55 
    56         //注意是泛型枚举,不是List,
    57         static IEnumerable<Animal> GetAnimalConfig()
    58         {
    59             yield return new Person("Type_Person");
    60             yield return new Cat("Type_Cat");
    61         }
    62     }
    63 }

    主要需要注意的是行:57 - 61 、 49 - 53 

  • 相关阅读:
    最近有点烦
    好累啊
    几招有效防电脑辐射
    发两张搞笑图片
    几招有效防电脑辐射
    English Study
    人脸识别方法(转载)
    小常识
    23、C++ Primer 4th 笔记,面向对象编程(1)
    18、C++ Primer 4th 笔记,复制控制
  • 原文地址:https://www.cnblogs.com/luguoshuai/p/9952231.html
Copyright © 2011-2022 走看看