Net framework і c# module 13
-
Upload
andriy-gladkiy -
Category
Technology
-
view
90 -
download
0
Transcript of Net framework і c# module 13
.NET Framework і C#Модуль 13 Колекції
2
В цьому модулі: Поняття колекції Класи колекцій ArrayList, HashTable, Stack, Queue, SortedList Інтерфейси колекцій IList, IEnumerator, IEnumerable, ICollection,
IDictionary, IComparer, IDictionaryEnumerator Приклади використання класів колекцій для збереження стандартних і
користувацьких типів
Andriy Gladkyy [email protected]
3
Поняття Колекції Колекція – це група елементів. В .NET колекції містяться об’єкти, в
тому числі і упаковані типи значень. Всі класи колекцій находяться в просторі імен System.Collections.
Andriy Gladkyy [email protected]
4
System.Collections.ArrayList ArrayList – це клас подібний масиву але він може розширюватись.
При поміщені в колекцію більше елементів ніж місткість колекції то місткість колекції в два рази збільшується. Додання елементів в колекцію відбувається за допомогою методів Add() AddRange() Місткість колекції можна зменшити до фактичної за допомогою метода TrimToSize() Колекція ArrayList сприймає свої об’єкти як object. Тому в дану колекцію можна помістити об’єкти різних типів. Метод GetRange() дозволяє сформувати нову колекцію зі значеннями елементів, взятих з вказаного діапазону вхідної колекції. Для видалення елементів з колекції ArrayList по заданому індексу можна за допомогою методу RemoveAt() Метод Sort() дозволяє сортувати колекцію по принципу, що залежить від типу елементів
Andriy Gladkyy [email protected]
ArrayList arr = new ArrayList()
6
System.Collections.Stack Тип колекції, що ідеально підходить для тимчасового розміщення
об’єктів, які після використання будуть видалені. Дана колекція працює за принципом LIFO (last-in-first-out).
Елементи добавляються в колекції за допомогою метода Push(); Витягуються за допомогою метода Pop(); Для отримання значення елемента який останній був доданий до
колекції необхідно застосувати метод Peek(), який не видаляє елементи з колекції на відміну від Pop()
Звернутися за індексом до елементу даної колекції не можна Для перевірки, чи містить колекція задане значення застосовується
метод Contains, яка повертає true у випадку позитивного результату і false в іншому випадку
Для копіювання колекції в масив застосовується метод CopyTo()
Andriy Gladkyy [email protected]
Stack st = new Stack()
7Andriy Gladkyy [email protected]
Демонстрація
8
System.Collections.Queue Дана колекція відрізняється від колекції Stack тим, що вона
організована за принципом FIFO (first-in-first-out), за яким працює черга.
Індексація до даної колекції не застосовується Для поміщення елементів в колекцію використовується метод
Enqueue() Для видалення елементів з колекції використовується метод Dequeue() Метод Peek() повертає значення елемента, який був першим
поміщений в колекцію (при цьому не видаляє його)
Andriy Gladkyy [email protected]
9Andriy Gladkyy [email protected]
Демонстрація
10
System.Collections.SortedList Представляє собою колекцію пар об’єктів ключ-значення, які
сортуються по ключі і доступ до елементів якою може бути отриманий по ключу і по індексу.
По замовчуванню ємність колекції дорівнює нулю. При додані першого елемента ємність встановлюється в 16 елементів.
При переповнені даної позначки пам’ять подвоюється Для додання пари лементів в колекцію використовується метод Add(),
при цьому задається ключ і значення. Елементи поміщені в колекцію SortedList автоматично будуть
відсортовані по ключу Для видалення елементів по ключу застосовується метод Remove() Для видалення елементів по індексу застосовується метод RemoveAt() Пара ключ-значення не обов’язково повинні бути одного типу. Але всі
пари повинні бути однорідними, тобто ключі одного і того самого типу, всі значення одного і того самого типу. Колекція не може сортувати об’єкти (ключі) різних типів.
Andriy Gladkyy [email protected]
11Andriy Gladkyy [email protected]
Демонстрація
12
System.Collections.Hashtable Представляю собою набір даних, що містять пари ключ-значення, які
відносяться до типу object. Дана колекція відноситься до групи словників, де по ключу ми
можемо отримати доступ до значення. Ключі і значення можуть бути різних типів не тільки в межах пари а і
межах колекції. Щоб добавити пару в колекцію використовується метод Add() Щоб видалити пару з колекції використовується метод Remove() Перевірити чи колекція містить задане значення можна вказати його
ключ як параметр методу Contains()
Andriy Gladkyy [email protected]
13Andriy Gladkyy [email protected]
14Andriy Gladkyy [email protected]
15Andriy Gladkyy [email protected]
16Andriy Gladkyy [email protected]
17Andriy Gladkyy [email protected]
18Andriy Gladkyy [email protected]
Створити примітивний англо-український і українсько-англійський словник, що містить пари слів – назви країн по українські і англійські. Користувач повинен мати можливість вибрати напрямок перекладу.