Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 23666|Odpověď: 1

[Zdroj] Několik jednoduchých použití IEnumerable

[Kopírovat odkaz]
Zveřejněno 09.05.2015 18:07:14 | | |
Proč vidíme rozhraní IEnumerable, možná si myslíme, že je úžasné, v obecném programování si ho vlastně nemůžeme představit použít, ale jak se říká, existence je pravda, tak jaké úžasné věci nám může přinést?
Abychom to pochopili, pojďme se podívat na jeho definici!
Na MSDN, jak se říká, je to veřejné enum, které podporuje jednoduché iterace na negenerických kolekcích. Jinými slovy, pro všechna procházení polí z IEnumerable můžeme tuto vlastnost použít k definování společné metody, která může procházet pole.
Například:
        public static void Print(IEnumerable myList)
        {
            int i = 0;
            foreach (objektový objekt v myList)
            {
                pokud (obj je Student)// Toto je hodnocení typu, kde student je třída nebo struktura
                {
                    Student s=(Student)obj;
                    Console.WriteLine("\t[{0}]:\t{1}", i++, s.Sname);
                }
                pokud (obj je int)
                {
                    Console.WriteLine("INT:{0}",obj);
                }
            }
            Console.WriteLine();
        }
Výše můžeme provést více úsudků if ve foreach pro provedení odpovídajících operací.
Další využití IEnumerable je v obecných oblastech. Dotazování v poli s lamda výrazem probíhá následovně:
            <string> Seznam ovoce =
                nový seznam<string> { "apple", "passionfruit", "banana", "mango",
                    "pomerančová", "borůvková", "hroznova", "jahodová" };
           Dotaz na seznam<string> = ovoce. Kde(ovoce => ovoce. Délka < 6). ToList();
            <string> IEnumerable query = ovoce. Kde(ovoce => ovoce. délka < 6);
            foreach (string fruit v dotazu)
                Console.WriteLine (ovoce);
Co se týče výše uvedených dvou příkladů, myslím, že se stále často používají v běžném programování, můžeme to zkusit...




Předchozí:Typ "System.Data.Linq.DataContext" je definován v nereferencovaném assembleru. Musím přidat odpověď do programu...
Další:Vyřešíme problém, kdy je návratová hodnota linq prázdná nebo vynutí typ jako nulový
Zveřejněno 12.05.2015 12:57:42 |

Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com