close

創建一個可以輪巡的類別如下

public class ExampleIenumerableClass
    {
        public  List<Person> plist;
        public  ExampleIenumerableClass() 
        {
            plist = new List<Person>();
            plist.Add(new Person() { age = "34", name = "sam" });
            plist.Add(new Person() { age = "30", name = "mary" });
            plist.Add(new Person() { age = "18", name = "sharon" });
        }

        public  IEnumerable<string> get_all_person_name() //此函式就是一個enumerable元素
        {
            foreach (Person p in plist)
            {
                yield return p.name; //延遲執行
            }
        }

        public  IEnumerable<string> get_all_person_age()
        {
            foreach (Person p in plist)
            {
                yield return p.age;
            }
        }

    }

呼叫此類別取得輪巡的物件,並進行輪巡印出姓名、年齡


public partial class MainWindow : Window
    {
        ExampleIenumerableClass enum1 = new ExampleIenumerableClass();
        public MainWindow()
        {
            InitializeComponent();
            ex1.ShowPerson();

            #region example2
            Debug.WriteLine("------example2 s------");
            IEnumerable names= enum1.get_all_person_name();
            IEnumerable ages = enum1.get_all_person_age();
            foreach(string name in names)
            {
                Debug.WriteLine("my name is "+name);
            }
            foreach (string age in ages)
            {
                Debug.WriteLine("my age is " + age);
            }
            Debug.WriteLine("------example2 e------");
            #endregion
        }
    }

創作者介紹
創作者 tensun891 的頭像
tensun891

無聊的人。

tensun891 發表在 痞客邦 留言(0) 人氣()