Rozdiel medzi zoznamom a súborom

Obsah:

Rozdiel medzi zoznamom a súborom
Rozdiel medzi zoznamom a súborom

Video: Rozdiel medzi zoznamom a súborom

Video: Rozdiel medzi zoznamom a súborom
Video: Богатые студенты vs Бедные студенты 2024, November
Anonim

Kľúčový rozdiel – zoznam verzus súbor

Väčšina programovacích jazykov používa polia na uloženie množiny údajov rovnakého typu. Jednou z hlavných nevýhod polí je, že akonáhle je veľkosť poľa deklarovaná, nemôže byť zmenená. Ak chce programátor uložiť hodnoty presahujúce veľkosť poľa, mal by vytvoriť nové pole a skopírovať existujúce prvky do nového poľa. V týchto situáciách je možné použiť kolekcie. S podporou kolekcií je možné pridávať prvky, odstraňovať prvky a mnoho ďalších operácií. V programovacích jazykoch, ako je Java, sú dostupné rôzne typy kolekcií. List a Set sú rozhraniami hierarchie kolekcií. Základným rozhraním pre ostatné rozhrania je Collection. Kľúčový rozdiel medzi zoznamom a množinou je v tom, že zoznam podporuje ukladanie rovnakého prvku viackrát, zatiaľ čo množina nepodporuje viacnásobné ukladanie toho istého prvku. Sada preto neumožňuje duplikáciu.

Čo je zoznam?

Zoznam je rozhranie, ktoré rozširuje rozhranie kolekcie. V rozhraní kolekcie je množstvo metód. Metóda add pomáha pridať prvok. „Metóda odstránenia“je odstránenie prvku. Existuje metóda „addAll“na pridanie viacerých prvkov, zatiaľ čo metóda „removeAll“na odstránenie prvkov z kolekcie. Metóda obsahuje pomáha zistiť, či sa konkrétny objekt nachádza v zozname alebo nie. Funkcia „containsAll“má zistiť, či sa v kolekcii nachádza množina objektov. Metóda iterátora sa používa na precyklenie položiek zoznamu. Keďže Zoznam rozširuje kolekciu, všetky metódy kolekcie patria do zoznamu. Okrem týchto metód má Zoznam metódy ako get a set. Programátor môže získať hodnotu na konkrétnom indexe pomocou metódy get. Programátor môže nastaviť hodnotu pri konkrétnom indexe pomocou metódy set. „indexOf“sa používa na nájdenie indexu prvku.

V zozname možno operácie vykonávať podľa pozície. Programátor môže poskytnúť dátový prvok, ktorý sa má pridať do indexu. Takže bude pridaný do konkrétneho indexu. Ak programátor neuvedie index, prvok sa pridá na koniec zoznamu. Zachováva aj vložené poradie. Ak sa pridá prvok 1 a potom prvok2, potom prvok1 bude pred prvkom2.

Rozdiel medzi zoznamom a súborom
Rozdiel medzi zoznamom a súborom

Obrázok 01: Zoznam a sada

ArrayList, LinkedList, Vector sú niektoré triedy, ktoré implementujú zoznam. V ArrayList je prístup k prvku rýchly, ale vkladanie a mazanie je nižšie. ArrayList nie je bezpečný pre vlákna. Prístup k rovnakému ArrayList z viacerých vlákien nemusí poskytnúť rovnaký výsledok. V LinkedList sú prvky prepojené smerom dozadu aj dopredu. Vkladanie a odstraňovanie prvkov pomocou LinkedList je rýchlejšie ako ArrayList. LinkedList implementuje zoznam a zoznam oboch. Vector je podobný ArrayList, ale je bezpečný, pretože všetky metódy sú synchronizované.

Čo je nastavené?

Set je rozhranie, ktoré rozširuje rozhranie kolekcie. Keďže rozhranie Set rozširuje kolekciu, všetky metódy kolekcie sú tiež súčasťou sady. Sada nepodporuje duplicitné hodnoty. Preto programátor nemôže uložiť ten istý prvok dvakrát. Zachováva jedinečný súbor prvkov. Rozhranie SortedSet rozširuje rozhranie Set. SortedSet udržiava prvky v zoradenom poradí. Rozhranie NavigableSet rozširuje SortedSet. NavigableSet poskytuje navigačné metódy, ako napríklad nižšie, podlaha, strop atď.

HashSet, LinkedHashSet a TreeSet sú niektoré triedy, ktoré implementujú rozhranie Set. HashSet implementuje rozhranie Set. Nezachováva vložené poradie. Ak sú hodnoty vložené ako a, x, b, môžu sa uložiť ako, x, a, b. LinkedSet udržiava vloženú objednávku. Ak sú prvky vložené v poradí a, x, b, poradie ukladania bude a, x, b. TreeSet implementuje Set a NavigableSet. Nezachováva poradie vkladania, ale ukladá prvky v zoradenom poradí. Ak je vložená objednávka a, c, b, prvky budú uložené ako a, b, c. Všetky HashSet, LinkedHashSet a TreeSet nebudú mať žiadne duplicitné prvky.

Aké sú podobnosti medzi zoznamom a množinou?

  • Rozhrania zoznamu aj nastavenia rozširujú rozhranie kolekcie.
  • Operácie podpory zoznamu aj nastavenia, ako je pridávanie a odstraňovanie prvkov.

Aký je rozdiel medzi zoznamom a množinou?

Zoznam vs. Set

List Interface je podrozhranie kolekcie, ktoré obsahuje metódy na vykonávanie operácií, ako je vkladanie, mazanie na základe indexu. Set Interface je podrozhranie kolekcie, ktoré obsahuje metódy na vykonávanie operácií, ako je vkladanie, mazanie prvkov pri zachovaní jedinečných prvkov.
Triedy
ArrayList, Vector a LinkedList sú triedy, ktoré implementujú rozhranie zoznamu. HashSet, LinkedHashSet a TreeSet sú triedy, ktoré implementujú rozhranie Set.
Duplikácia prvku
Zoznam podporuje duplikáciu prvkov. Súprava nepodporuje duplikáciu prvkov. Prvky sú jedinečné.

Súhrn – zoznam verzus množina

Kolekcie sa používajú na dynamické ukladanie prvkov. Rozhranie Collection poskytuje programovacie jazyky ako Java. List a Set sú dve rozhrania, ktoré patria do rozhrania Collection. Obe rozhrania rozširujú kolekciu. Tento článok diskutoval o rozdieloch medzi zoznamom a súborom. Kľúčový rozdiel medzi zoznamom a množinou je v tom, že zoznam podporuje ukladanie rovnakého prvku viackrát, zatiaľ čo množina nepodporuje viacnásobné ukladanie toho istého prvku. Set si vždy zachováva jedinečné prvky.

Odporúča: