Різниця між списком та набором

Ключова різниця - Список проти Встановити
 

Більшість мов програмування використовують масиви для зберігання набору даних одного типу. Одним з головних недоліків масивів є те, що після оголошення розміру масиву його неможливо змінити. Якщо програміст хоче зберегти значення, що перевищують розмір масиву, то він повинен створити новий масив і скопіювати наявні елементи в новий масив. У цих ситуаціях можна використовувати колекції. Можливо додавання елементів, видалення елементів та багато інших операцій за підтримки колекцій. Існують різні типи колекцій, доступні в мовах програмування, таких як Java. Список і Набір - це інтерфейси ієрархії колекцій. Базовим інтерфейсом для інших інтерфейсів є Collection. The ключова різниця між List і Set це те, що Список підтримує збереження одного і того ж елемента кілька разів, тоді як Set не підтримує зберігання одного і того ж елемента кілька разів. Тому набір не дозволяє дублювати.

ЗМІСТ

1. Огляд та ключові відмінності
2. Що таке Список
3. Що встановлено
4. Подібність між списком та набором
5. Порівняльне порівняння - список проти встановлення у таблиці
6. Підсумок

Що таке Список?

Список - це інтерфейс, який розширює інтерфейс колекції. У інтерфейсі колекції існує ряд методів. Метод add допомагає додати елемент. "Видалити метод" - це видалити елемент. Існує метод "addAll" для додавання декількох елементів, а метод "deleteAll" для видалення елементів із колекції. Метод містить допомагає встановити, чи є в списку певний об'єкт чи ні. "Містить все" - це встановити, чи є в колекції набір об'єктів. Метод ітератора використовується для перегляду елементів у списку. Оскільки Список розширює колекцію, всі методи колекції належать до списку. Окрім цих методів, у списку є такі методи, як get and set. Програміст може отримати значення за певним індексом, використовуючи метод get. Програміст може встановити значення за певним індексом за допомогою встановленого методу. 'IndexOf' використовується для пошуку індексу елемента.

У списку операції можна виконувати відповідно до позиції. Програміст може надати елемент даних, який потрібно додати до індексу. Так він буде доданий до конкретного показника. Якщо програміст не дає індексу, елемент буде доданий до кінця Списку. Він також підтримує вставлений порядок. Якщо елемент 1 буде додано, а потім доданий елемент 2, то елемент 1 буде перед елементом2.

Малюнок 01: Список та встановлення

ArrayList, LinkedList, Vector - це деякі класи, які реалізують List. У ArrayList доступ до елемента швидкий, але вставка та видалення нижче. ArrayList не є безпечним для потоків. Доступ до того ж ArrayList з декількох потоків може не дати однакового результату. У LinkedList елементи пов'язані як назад, так і вперед. Вставлення та видалення елементів за допомогою LinkedList швидше, ніж ArrayList. LinkedList реалізує і список, і чергу. Вектор схожий на ArrayList, але він захищений від протектора, оскільки всі методи синхронізовані.

Що встановлено?

Set - це інтерфейс, який розширює інтерфейс Collection. Оскільки інтерфейс Set розширює колекцію, всі методи колекції також належать до Set. Набір не підтримує значення дублювання. Тому програміст не може зберігати один і той же елемент двічі. Він підтримує унікальний набір елементів. Інтерфейс SortedSet розширює встановити інтерфейс. SortedSet підтримує елементи у відсортованому порядку. Інтерфейс NavigableSet розширює SortedSet. NavigableSet пропонує такі способи навігації, як нижня, підлога, стеля тощо.

HashSet, LinkedHashSet і TreeSet - це деякі класи, які реалізують інтерфейс Set. The HashSet реалізує Встановити інтерфейс. Він не підтримує вставлений порядок. Якщо значення вставляються у вигляді a, x, b, вони можуть зберігатися як, x, a, b. The LinkedSet підтримує вставлений порядок. Якщо елементи вставлені в порядку a, x, b, порядком зберігання буде a, x, b. The TreeSet реалізує Set та NavigableSet. Він не підтримує порядок вставки, але зберігає елементи в упорядкованому порядку. Якщо вставлений порядок - a, c, b, то елементи зберігатимуться як a, b, c. Усі HashSet, LinkedHashSet і TreeSet не матимуть жодних повторюваних елементів.

Які подібності між списком та набором?

  • І інтерфейси List, і Set розширюють інтерфейс колекції.
  • Як Список, так і Встановити підтримку операцій, таких як додавання, видалення елементів.

Яка різниця між списком та набором?

Список проти встановити

Інтерфейс списку - це підрозділ інтерфейсу колекції, який містить методи виконання операцій, таких як вставка, видалення на основі індексу. Інтерфейс Set - це інтерфейс колекції, який містить методи для виконання таких операцій, як вставлення, видалення елементів, зберігаючи унікальні елементи.
 Заняття
ArrayList, Vector та LinkedList - це класи, що реалізують інтерфейс List. HashSet, LinkedHashSet і TreeSet - це класи, які реалізують інтерфейс Set.
Копіювання елементів
Список підтримує дублювання елементів. Набір не підтримує дублювання елементів. Елементи унікальні.

Підсумок - Список проти Встановити

Колекції використовуються для динамічного зберігання елементів. Мови програмування, такі як Java, надає інтерфейс колекції. Список та Набір - це два інтерфейси, що належать до інтерфейсу колекції. Обидва інтерфейси розширюють колекцію. У цій статті обговорювалася різниця між списком та набором. Ключова відмінність між List і Set полягає в тому, що List підтримує зберігання одного і того ж елемента кілька разів, тоді як Set не підтримує зберігання одного і того ж елемента кілька разів. Набір завжди підтримує унікальні елементи.

Довідка:

1.Будинка, Підручники. «Колекції Java»., Підручники, 8 січня 2018 р. Доступні тут