Rozdiel Medzi TreeSet A HashSet

Obsah:

Rozdiel Medzi TreeSet A HashSet
Rozdiel Medzi TreeSet A HashSet

Video: Rozdiel Medzi TreeSet A HashSet

Video: Rozdiel Medzi TreeSet A HashSet
Video: HashSet и TreeSet - Collections #1 - Advanced Java 2024, November
Anonim

Kľúčový rozdiel - TreeSet vs HashSet

Väčšina programovacích jazykov podporuje polia. Jedná sa o dátovú štruktúru, ktorá sa používa na ukladanie viacerých prvkov rovnakého dátového typu. Ak je pole deklarované pre šesť prvkov, potom ho nemožno použiť na uloženie desiatich prvkov. Preto polia nie sú dynamické a po deklarácii nemôžu zmeniť veľkosť poľa. Programovacie jazyky, ako je Java, podporuje kolekcie, ktoré sa používajú na dynamické ukladanie údajov. Kolekcie podporujú operácie, ako je pridávanie prvkov a mazanie prvkov. V hierarchii zbierok je množstvo rozhraní a tried. Základné rozhranie je rozhranie Collection. Sada je rozhranie, ktoré rozširuje rozhranie kolekcie. Neumožňuje duplikáciu. TreeSet a HashSet sú dve triedy v hierarchii zbierky a obe implementujú rozhranie Set. TreeSet je trieda, ktorá implementuje rozhranie Set a slúži na ukladanie jedinečných prvkov vo vzostupnom poradí. HashSet je trieda, ktorá implementuje rozhranie Set a slúži na ukladanie jedinečných prvkov pomocou hashovacieho mechanizmu. Kľúčový rozdiel medzi TreeSet a HashSet spočíva v tom, že TreeSet ukladá prvky vo vzostupnom poradí, zatiaľ čo HashSet neukladá prvky vo vzostupnom poradí. TreeSet aj HashSet ukladajú iba jedinečné prvky.

OBSAH

1. Prehľad a kľúčový rozdiel

2. Čo je to TreeSet

3. Čo je to HashSet

4. Podobnosti medzi TreeSet a HashSet

5. Porovnanie vedľa seba - TreeSet vs HashSet vo forme tabuľky

6. Zhrnutie

Čo je to TreeSet?

Trieda TreeSet implementuje rozhranie NavigableSet. Rozhranie NavigableSet rozširuje rozhrania SortedSet, Set, Collection a Iterable v hierarchickom poradí. TreeSet vždy zachováva vzostupné poradie. Ak boli prvky vložené v poradí B, A, C, budú uložené ako A, B, C. Metódy ako add (), remove () je možné použiť s objektom TreeSet. Na pridanie prvku je možné použiť metódu add. Metóda remove sa používa na odstránenie prvku z kolekcie. Existuje niekoľko metód, ktoré možno použiť s TreeSet.

Rozdiel medzi TreeSet a HashSet
Rozdiel medzi TreeSet a HashSet

Obrázok 01: Programovanie pomocou TreeSet

Podľa vyššie uvedeného programu sa vytvorí objekt typu TreeSet. Reťazcové dátové prvky sa do tohto objektu pridávajú metódou add. Poradie vložených údajov je A, D, A, B, C, D. Pomocou iterátora sa uložené hodnoty vytlačia na obrazovku. Výstup je A, B, C, D. Aj keď existujú dve písmená A a dve písmená D, na výstupe sa zobrazí vždy jedno A a jedno D. TreeSet preto ukladá jedinečné prvky. Neexistuje žiadne konkrétne poradie vloženia, ale pri pozorovaní výstupu je vidieť, že TreeSet zachováva vzostupné poradie prvkov.

Čo je to HashSet?

Trieda HashSet rozširuje triedu AbstractSet, ktorá implementuje Set Interface. Rozhranie Set dedí kolekčné a Iterovateľné rozhrania v hierarchickom poradí. V HashSet nie je zaručené, že prvky zachovajú vzostupné a vložené poradie. Ak bolo vložené poradie A, B, C, mohli by sa hodnoty ukladať ako C, A, B. Poradie uloženia môže byť tiež A, B, C, ale neexistuje záruka, že sa zachová vložený poradie alebo vzostupné poradie.

Kľúčový rozdiel medzi TreeSet a HashSet
Kľúčový rozdiel medzi TreeSet a HashSet

Obrázok 02: Programovanie pomocou HashSet

Podľa vyššie uvedeného programu sa vytvorí objekt typu HashSet. Reťazcové dátové prvky sa do tohto objektu pridávajú metódou add. Poradie vložených údajov je L, R, M, M, R, L. Pomocou iterátora sa uložené hodnoty vytlačia na obrazovku. Výstupom je RL M. Aj keď od každého sú dve písmená L, R a M, je zobrazené iba jedno písmeno. Preto sada HashSet ukladá jedinečné prvky. Pri pozorovaní výstupu je vidieť, že neexistuje vzostupné poradie alebo je vložené poradie zachované.

Aké sú podobnosti medzi TreeSet a HashSet?

  • TreeSet aj HashSet sú triedy patriace do hierarchie zbierok.
  • TreeSet aj HashSet ukladajú iba jedinečné prvky.
  • Na ukladanie a manipuláciu s mnohými prvkami je možné použiť TreeSet aj HashSet.
  • TreeSet aj HashSet neudržiavajú vložené poradie.

Aký je rozdiel medzi TreeSet a HashSet?

Rozdielny článok v strede pred tabuľkou

TreeSet vs HashSet

TreeSet je trieda v hierarchii zbierok, ktorá sa používa na ukladanie jedinečných prvkov vo vzostupnom poradí. HashSet je trieda v hierarchii zbierok, ktorá sa používa na ukladanie jedinečných prvkov pomocou hashovacieho mechanizmu.
Ukladanie prvkov
TreeSet ukladá prvky vo vzostupnom poradí. HashSet neukladá prvky vo vzostupnom poradí.

Zhrnutie - TreeSet vs HashSet

V programovaní je potrebné dynamicky ukladať dátové prvky. Programovacie jazyky, ako je Java, podporujú kolekcie, aby dosiahli túto úlohu. V hierarchii zbierok je množstvo rozhraní a tried. TreeSet a HashSet sú dve triedy v hierarchii zbierok. Oba implementujú rozhranie Set. TreeSet je trieda, ktorá implementuje rozhranie Set a slúži na ukladanie jedinečných prvkov vo vzostupnom poradí. HashSet je trieda, ktorá implementuje rozhranie Set a slúži na ukladanie jedinečných prvkov pomocou hashovacieho mechanizmu. Rozdiel medzi TreeSet a HashSet spočíva v tom, že TreeSet ukladá prvky vo vzostupnom poradí, zatiaľ čo HashSet neukladá prvky vo vzostupnom poradí. Tento článok pojednáva o rozdieloch medzi TreeSet a HashSet.

Odporúčaná: