Rozdíl Mezi TreeSet A HashSet

Obsah:

Rozdíl Mezi TreeSet A HashSet
Rozdíl Mezi TreeSet A HashSet

Video: Rozdíl Mezi TreeSet A HashSet

Video: Rozdíl Mezi TreeSet A HashSet
Video: HashSet и TreeSet - Collections #1 - Advanced Java 2024, Listopad
Anonim

Klíčový rozdíl - TreeSet vs HashSet

Většina programovacích jazyků podporuje pole. Jedná se o datovou strukturu, která se používá k ukládání více prvků stejného datového typu. Pokud je pole deklarováno pro šest prvků, nelze jej použít k uložení deseti prvků. Pole proto nejsou dynamická a po deklaraci nemohou změnit velikost pole. Programovací jazyky, jako je Java, podporují kolekce, které se používají k dynamickému ukládání dat. Kolekce podporují operace, jako je přidávání prvků a mazání prvků. V hierarchii kolekce je řada rozhraní a tříd. Základní rozhraní je rozhraní Collection. Set je rozhraní, které rozšiřuje rozhraní Collection. Nepovoluje duplikaci. TreeSet a HashSet jsou dvě třídy v hierarchii kolekce a obě implementují rozhraní Set. TreeSet je třída, která implementuje rozhraní Set a slouží k ukládání jedinečných prvků ve vzestupném pořadí. HashSet je třída, která implementuje rozhraní Set a slouží k ukládání jedinečných prvků pomocí hashing mechanismu. Klíčový rozdíl mezi TreeSet a HashSet spočívá v tom, že TreeSet ukládá prvky ve vzestupném pořadí, zatímco HashSet neukládá prvky ve vzestupném pořadí. TreeSet i HashSet ukládají pouze jedinečné prvky.

OBSAH

1. Přehled a klíčový rozdíl

2. Co je to TreeSet

3. Co je HashSet

4. Podobnosti mezi TreeSet a HashSet

5. Porovnání vedle sebe - TreeSet vs HashSet ve formě tabulky

6. Shrnutí

Co je to TreeSet?

Třída TreeSet implementuje rozhraní NavigableSet. Rozhraní NavigableSet rozšiřuje rozhraní SortedSet, Set, Collection a Iterable v hierarchickém pořadí. TreeSet vždy udržuje vzestupné pořadí. Pokud byly prvky vloženy v pořadí B, A, C, budou uloženy jako A, B, C. Metody jako add (), remove () lze použít s objektem TreeSet. K přidání prvku lze použít metodu add. Metoda remove se používá k odebrání prvku z kolekce. To jsou některé metody, které lze použít s TreeSet.

Rozdíl mezi TreeSet a HashSet
Rozdíl mezi TreeSet a HashSet

Obrázek 01: Programování pomocí TreeSet

Podle výše uvedeného programu je vytvořen objekt typu TreeSet. Řetězcové datové prvky se přidávají do tohoto objektu pomocí metody add. Pořadí vložených dat je A, D, A, B, C, D. Pomocí iterátoru se uložené hodnoty vytisknou na obrazovku. Výstup je A, B, C, D. I když existují dvě písmena A a dvě písmena D, výstup zobrazuje vždy jedno A a jedno D. TreeSet proto ukládá jedinečné prvky. Neexistuje žádné konkrétní pořadí vložení, ale při pozorování výstupu lze vidět, že TreeSet udržuje vzestupné pořadí prvků.

Co je HashSet?

Třída HashSet rozšiřuje třídu AbstractSet, která implementuje Set Interface. Rozhraní Set dědí Collection a Iterable rozhraní v hierarchickém pořadí. V HashSet neexistuje žádná záruka, že prvky budou udržovat vzestupné pořadí a vložené pořadí. Pokud byla vložená objednávka A, B, C, mohly by se hodnoty ukládat jako C, A, B. Ukládací objednávka může být také A, B, C, ale neexistuje záruka, že bude zachována vložená objednávka nebo vzestupné pořadí.

Klíčový rozdíl mezi TreeSet a HashSet
Klíčový rozdíl mezi TreeSet a HashSet

Obrázek 02: Programování pomocí HashSet

Podle výše uvedeného programu je vytvořen objekt typu HashSet. Řetězcové datové prvky se přidávají do tohoto objektu pomocí metody add. Pořadí vložených dat je L, R, M, M, R, L. Pomocí iterátoru se uložené hodnoty vytisknou na obrazovku. Výstupem je RL M. I když jsou od každého dvě písmena L, R a M, je od každého zobrazeno pouze jedno písmeno. HashSet proto ukládá jedinečné prvky. Při pozorování výstupu je vidět, že neexistuje vzestupné pořadí nebo je vložené pořadí zachováno.

Jaké jsou podobnosti mezi TreeSet a HashSet?

  • TreeSet i HashSet jsou třídy patřící do hierarchie kolekce.
  • TreeSet i HashSet ukládají pouze jedinečné prvky.
  • TreeSet i HashSet lze použít k ukládání a manipulaci s mnoha prvky.
  • TreeSet i HashSet neudržují vložené pořadí.

Jaký je rozdíl mezi TreeSet a HashSet?

Rozdílný článek uprostřed před tabulkou

TreeSet vs HashSet

TreeSet je třída v hierarchii kolekce, která se používá k ukládání jedinečných prvků ve vzestupném pořadí. HashSet je třída v hierarchii kolekce, která se používá k ukládání jedinečných prvků pomocí hashovacího mechanismu.
Ukládání prvků
TreeSet ukládá prvky ve vzestupném pořadí. HashSet neukládá prvky ve vzestupném pořadí.

Shrnutí - TreeSet vs HashSet

V programování je nutné ukládat datové prvky dynamicky. K dosažení tohoto úkolu programovací jazyky, jako je Java, podporují kolekce. V hierarchii kolekce je řada rozhraní a tříd. TreeSet a HashSet jsou dvě třídy v hierarchii kolekce. Oba implementují rozhraní Set. TreeSet je třída, která implementuje rozhraní Set a slouží k ukládání jedinečných prvků ve vzestupném pořadí. HashSet je třída, která implementuje rozhraní Set a slouží k ukládání jedinečných prvků pomocí hashovacího mechanismu. Rozdíl mezi TreeSet a HashSet spočívá v tom, že TreeSet ukládá prvky ve vzestupném pořadí, zatímco HashSet neukládá prvky ve vzestupném pořadí. Tento článek pojednával o rozdílech mezi TreeSet a HashSet.

Doporučená: