В нових версіях класів Edition і Magazine зберегти всі інші поля, властивості і методи з попередньої версії класу, внести необхідні виправлення в код властивостей і методів через зміни типів полів для списку редакторів і списку статей.
- закрите поле типу System.Collections.Generic.List
; - метод void AddDefaults (), c допомогою якого в список List
можна додати деяке число елементів типу Magazine для ініціалізації колекції за замовчуванням; - метод void AddMagazines (params Magazine []) для додавання елементів в список List
; - перевантажену версію віртуального методу string ToString () для формування рядка з інформацією про всі елементи списку List
, в тому числі значення всіх полів, список редакторів журналу і список статей в журналі для кожного елемента Magazine; - віртуальний метод string ToShortString (), який формує рядок з інформацією про всі елементи списку List
, що містить значення всіх полів, середній рейтинг статей, число редакторів журналу і число статей в журналі для кожного елемента Magazine, але без списків редакторів і статей. - метод void AddDefaults (), c допомогою якого в список List
- за назвою видання з використанням інтерфейсу IComparable, реалізованого в класі Edition;
- за датою виходу видання з використанням інтерфейсу IComparer
, реалізованого в класі Edition; - по тиражу видання з використанням інтерфейсу IComparer
, реалізованого у допоміжному класі. - по тиражу видання з використанням інтерфейсу IComparer
- властивість типу double (тільки з методом get), яке повертає максимальне значення середнього рейтингу статей для елементів списку List
; якщо в колекції немає елементів, властивість повертає деяке значення за замовчуванням; для пошуку максимального значення середнього рейтингу статей треба використовувати метод Max класу System.Linq.Enumerable; - властивість типу IEnumerable
(тільки з методом get), яке повертає підмножина елементів списку List з періодичністю виходу журналу Frequency.Monthly; для формування підмножини використовувати метод Where класу System.Linq.Enumerable; - метод List
RatingGroup (double value), який повертає список, що містить елементи Magazine з List із середнім рейтингом статей, який більше або дорівнює value; для формування списку використовувати методи Group і ToList класу System.Linq.Enumerable. Визначити клас TestCollections, в якому в якості типу TKey використовується клас Edition, а в якості типу TValue - клас Magazine. - Клас містить закриті поля з колекціями типів
- System.Collections.Generic.List
; - System.Collections.Generic.List
; - System.Collections.Generic.Dictionary
; - System.Collections.Generic.Dictionary
. - System.Collections.Generic.List
- У класі TestCollection визначити
- статичний метод з одним цілочисельним параметром типу int, який повертає посилання на об'єкт типу Magazine і використовується для автоматичної генерації елементів колекцій;
- конструктор c параметром типу int (число елементів в колекціях) для автоматичного створення колекцій із заданим числом елементів;
- метод, який обчислює час пошуку елемента в списках List
і List , час пошуку елемента по ключу і час пошуку елемента за значенням в колекціях-словниках Dictionary і Dictionary .
- властивість типу IEnumerable
- Створити об'єкт типу MagazineCollection. Додати до колекції роботу кілька елементів типу Magazine з різними значеннями полів і вивести об'єкт MagazineCollection.
- Для створеного об'єкта MagazineCollection викликати методи, які виконують сортування списку List
за різними критеріями, і після кожної сортування вивести дані об'єкта. Виконати сортування - за назвою видання;
- за датою виходу видання;
- по тиражу видання.
- Дзвонити методи класу MagazineCollection, що виконують операції зі списком List
, і після кожної операції вивести результат операції. Виконати - обчислення максимального значення середнього рейтингу статей для елементів списку; вивести максимальне значення;
- фільтрацію списку для відбору журналів з періодичністю виходу Frequency.Monthly, вивести результат фільтрації;
- угруповання елементів списку за значенням середнього рейтингу статей; вивести всі групи елементів.
- Створити об'єкт типу TestCollections. Викликати метод для пошуку в колекціях першого, центрального, останнього і елемента, що не входить в колекції. Вивести значення часу пошуку для всіх чотирьох випадків. Висновок повинен містити інформацію про те, до якої колекції і до якого елементу відноситься дане значення.