Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 23666|Відповідь: 1

[Джерело] Декілька простих застосувань IEnumerable

[Копіювати посилання]
Опубліковано 09.05.2015 18:07:14 | | |
Чому ми бачимо інтерфейс IEnumerable, ми можемо вважати його дивовижним, загалом у програмуванні ми не можемо уявити про його використання, але, як кажуть, існування — це істина, тож які чудові речі воно може нам принести?
Щоб зрозуміти це, давайте розглянемо її визначення!
На MSDN, як зазначено, це публічний enum, який підтримує прості ітерації на негенеричних колекціях. Іншими словами, для всіх обходів масивів, починаючи з IEnumerable, ми можемо використати цю особливість для визначення спільного методу, який дозволяє обходити масиви.
Наприклад:
        публічний статичний порожній Друк(IEnumerable myList)
        {
            int i = 0;
            foreach (Об'єкт obj у myList)
            {
                якщо (obj — це Студент)// Це судження типу, де учень — це клас або структура
                {
                    Студент s=(Студент)obj;
                    Console.WriteLine("\t[{0}]:\t{1}", i++, s.Sname);
                }
                якщо (obj — int)
                {
                    Console.WriteLine("INT:{0}",obj);
                }
            }
            Console.WriteLine();
        }
Вище ми можемо виконувати кілька суджень if у foreach для виконання відповідних операцій.
Ще одне застосування IEnumerable — у генериках. Запити в масиві з виразом lamda виглядають так:
            <string> Спискові фрукти =
                new List<string> { "apple", "passionfruit", "banana", "mango",
                    «апельсин», «чорниця», «виноград», «полуниця» };
           <string> Запит до списку = фрукти. Де(плід => фрукт. Довжина < 6). ToList();
            <string> IEnumerable query = фрукти. Де(плід => фрукт. Довжина < 6);
            foreach (струнковий фрукт у запиті)
                Console.WriteLine (фрукт);
Щодо двох вищезазначених прикладів, думаю, їх досі часто використовують у звичайному програмуванні, тож варто спробувати...




Попередній:Тип "System.Data.Linq.DataContext" визначений у непосиланій асемблі. Потрібно додати відповідь до програми...
Наступний:Розв'яжіть проблему порожнього значення linq або змушення типу бути нульовим
Опубліковано 12.05.2015 12:57:42 |

Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com