Miért látjuk az IEnumerable interfészt? Lehet, hogy lenyűgözőnek tartjuk, általánosságban a programozásban, alapvetően nem tudunk eszünkbe jutni, de ahogy mondják, a létezés az igazság, szóval milyen csodálatos dolgokat hozhat nekünk? Hogy megértsük, nézzük meg a definícióját! Az MSDN-en, ahogy mondják, ez egy nyilvános enum, amely egyszerű iterációkat támogat nem generikus gyűjteményeken. Más szóval, minden tömbátjárásnál, az IEnumerable-ból, ezt a funkciót használhatjuk egy közös módszer definiálására, amely képes áthaladni a tömbökön. Például: public static void Print(IEnumerable myList) { int i = 0; foreach (objektum obj a myListben) { ha (az obj a diák)// Ez a típus szerinti ítélet, ahol a diák egy osztály vagy struktúra { Diák s=(Diák)obj; Console.WriteLine("\t[{0}]:\t{1}", i++, s.Sname); } ha (az obj int) { Console.WriteLine("INT:{0}",obj); } } Console.WriteLine(); } Fent több if-ítéletet végezhetünk az foreach esetében a megfelelő műveletek végrehajtásához. Az IEnumerable másik felhasználása az általános nyelvek. Lamda kifejezéssel rendelkező tömbben lekérdezés a következő: <string> Gyümölcslista = új<string> lista { "apple", "passionfruit", "banán", "mango", "narancs", "áfonya", "szőlő", "eper" }; <string> Lista lekérdezés = gyümölcsök. Ahol (gyümölcs => gyümölcs. Hossz < 6). ToList(); <string> IEnumerable query = gyümölcsök. Ahol (gyümölcs => gyümölcs. Hossz < 6); foreach (szál gyümölcs a lekérdezésben) Console.WriteLine (gyümölcs); A fenti két példát illeti, szerintem még mindig gyakran használják a hétköznapi programozásban, akkor akár megpróbálhatjuk... |