Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Реалізація інтерфейсу IComparer

Реферат Реалізація інтерфейсу IComparer





ро зміни колекції.

Властивість Action надає інформацію про те, був елемент доданий або видалений. Для видалених елементів встановлюється властивість OldItems, що перераховує вилучені елементи.

При додаванні елементів встановлюється властивість NewItems, яке перераховує нові елементи.



. Бітові колекції


Якщо потрібно мати справу з безліччю бітів, можна застосувати клас BitArray і структуру BitVector32. Клас BitArray розташований в просторі імен System.Collections, a BitVector32 - у просторі System.Collections.Specialized. Найбільш важлива відмінність між цими двома типами полягає в тому, що BitArray має змінюваний розмір, а це зручно, коли необхідну кількість біт відомо заздалегідь, і воно велике. Структура BitVector32 заснована на стеку, і тому працює швидше. BitVector32 містить лише 32 біта, які зберігаються в цілому числі. [3]


. 1 Клас BitArray


Клас BitArray служить для зберігання окремих бітів в колекції. А оскільки в колекції цього класу зберігаються біти, а не об'єкти, то своїми можливостями він відрізняється від класів інших колекцій. Тим не менш, в класі BitArray реалізуються інтерфейси ICollection і IEnumerable як основоположні елементи підтримки всіх типів колекцій. Крім того, в класі BitArray реалізується інтерфейс ICloneable. [2]

У класі BitArray визначено декілька конструкторів. Так, за допомогою наведеного нижче конструктора можна сконструювати об'єкт типу BitArray з масиву логічних значень:

BitArray (bool [] values)


В даному випадку кожен елемент масиву values ??стає окремим бітом в колекції. Це означає, що кожному елементу масиву values ??відповідає окремий біт в колекції. Більше того, порядок розташування елементів у масиві values ??зберігається і в колекції відповідних їм бітів. Колекцію типу BitArray можна також скласти з масиву байтів, використовуючи наступний конструктор: [2]

BitArray (byte [] bytes)


Тут бітами в колекції стає вже цілий їх набір з масиву bytes, причому елемент bytes [0] позначає перші 8 бітів, елемент bytes [1] друга 8 бітів і т.д. [2]

Колекції типу BitArray підлягають індексації. По кожному індексом вказується окремий біт в колекції, причому нульовий індекс позначає молодший біт.

У класі BitArray визначається ряд власних методів, крім тих, що вже оголошені в інтерфейсах, які в ньому реалізуються. Методи цього класу наведені нижче. [3]

У класі BitArray Не підтримується метод Synchronized (). Це означає, що для колекцій даного класу синхронізована оболонка недоступна, а властивість IsSynchronized завжди має логічне значення false. Тим не менш, для управління доступом до колекції типу BitArray її можна синхронізувати для об'єкта, наданого у згадуваному раніше властивістю SyncRoot. [2] ()

Виконує операцію логічного множення (І) бітів викликає об'єкта і колекції value. Повертає колекцію типу BitArray, що містить результат ()

Повертає значення біта, указуваного за індексом ()

Виконує операцію порозрядного логічного заперечення (НЕ) бітів викликає колекції і повертає колекцію типу BitArray, що містить результат ()

Виконує операцію логічного додавання (АБО) бітів викликає об'єкта і колекції value. Повертає колекцію типу BitArray, що містить результат. [2] ()

Встановлює біт, що указується за індексом index, рівним значенню value ()

Встановлює всі біти рівними значенням value ()

Виконує логічну операцію виключає (АБО) над бітами викликає об'єкта і колекції value. Повертає колекцію типу BitArray, що містить результат. [2]

У класі BitArray визначається також власне властивість, крім тих, що вказані в інтерфейсах, які в ньому реалізуються:

int Length {get; set; }


Властивість Length дозволяє встановити або отримати кількість бітів в колекції. Отже, воно повертає таке ж значення, як і стандартне властивість Count, яке визначається для всіх колекцій. На відміну від властивості Count, властивість Length доступно не тільки для читання, але і для запису, а значить, з його допомогою можна змінити розмір колекції типу BitArray. [3]


. 2 Структура BitVector


Якщо необхідну кількість біт відомо заздалегідь, то замість BitArray можна використовувати структуру BitVector32. Структура BitVector32 більш ефективна, оскільки це тип значення, який зберігає біти в стеку всередині цілого числа. У єдиному цілому числі є місце для 32 ...


Назад | сторінка 13 з 21 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Збір трав'янистих рослин, комах ентомологичеськой колекції, тварин коле ...
  • Реферат на тему: Розробка колекції одягу
  • Реферат на тему: Ворожильні написи II тис. До н.е. Класифікація колекції
  • Реферат на тему: Будова і властивість матеріалів. Кристалічну будову. Вплив типу зв'яз ...
  • Реферат на тему: Розробка колекції одягу у венеціанському стилі