See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 23666|Vastuse: 1

[Allikas] Mõned lihtsad IEnumerable'i kasutusviisid

[Kopeeri link]
Postitatud 09.05.2015 18:07:14 | | |
Miks me näeme IEnumerable'i liidest? Võime arvata, et see on hämmastav, üldiselt programmeerimine, põhimõtteliselt me ei suuda seda kasutada, aga nagu öeldakse, eksistents on tõde, nii et milliseid imelisi asju see meile tuua võib?
Selle mõistmiseks vaatame selle definitsiooni üle!
MSDN-is, nagu öeldakse, on see avalik enum, mis toetab lihtsaid iteratsioone mitte-generilistel kogudel. Teisisõnu, kõigi massiivi läbimiste puhul, IEnumerable'ist, saame seda funktsiooni kasutada ühise meetodi defineerimiseks, mis suudab massiivide läbimiseks.
Näiteks:
        avalik staatiline tühjus Prindi (IEnumerable myList)
        {
            int i = 0;
            foreach (objekt obj myListis)
            {
                if (obj on õpilane)// See on tüübi hinnang, kus õpilane on klass või struktuur
                {
                    Õpilane s=(Õpilane)obj;
                    Console.WriteLine("\t[{0}]:\t{1}", i++, s.Sname);
                }
                kui (objekt on int)
                {
                    Console.WriteLine("INT:{0}",obj);
                }
            }
            Console.WriteLine();
        }
Ülaltoodud saame teha mitu if-hinnangut forach-is, et sooritada vastavaid operatsioone.
IEnumerable'i teine kasutusala on üldistes vormides. Massiivi pärimine lamda avaldisega on järgmine:
            Nimekirja<string> puuviljad =
                uus nimekiri<string> { "apple", "passionfruit", "banaan", "mango",
                    "apelsin", "mustikas", "viinamarja", "maasikas" };
           <string> Loendi päring = puuviljad. Kus(puuvili => puuvili. Pikkus < 6). ToList();
            <string> IEnumerable päring = viljad. Kus(puuvili => puuvili. Pikkus < 6);
            foreach (string fruit päringus)
                Console.WriteLine(fruit);
Mis puudutab eelnevaid kahte näidet, siis arvan, et neid kasutatakse endiselt sageli tavalises programmeerimises, võime sama hästi proovida...




Eelmine:Tüüp "System.Data.Linq.DataContext" on määratletud viitamata assamblees. Pean programmi vastuse lisama...
Järgmine:Lahenda probleem, kus linq tagastusväärtus on tühi või sunnib tüübi nulliks
Postitatud 12.05.2015 12:57:42 |

Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com