Rozdíl Mezi HashMap A TreeMap

Obsah:

Rozdíl Mezi HashMap A TreeMap
Rozdíl Mezi HashMap A TreeMap

Video: Rozdíl Mezi HashMap A TreeMap

Video: Rozdíl Mezi HashMap A TreeMap
Video: Разница между HashMap и TreeMap Java собеседование 2024, Listopad
Anonim

Klíčový rozdíl - HashMap vs TreeMap

V programování existují různé mechanismy pro sběr dat. Kolekce je jednou z metod ukládání dat. Programovací jazyky, jako je Java, používají kolekce. Jedná se o rámec s třídami a rozhraními pro ukládání a manipulaci se sadou datových prvků. V normálním poli existuje pevný počet prvků k uložení. To je omezení polí. Místo toho může programátor používat kolekce. Pomocí sbírek lze provádět operace, jako je vkládání, mazání, třídění a vyhledávání. V Javě patří rozhraní Map do sbírek. Mapa se používá k reprezentaci dat v párech klíč - hodnota. Existují pouze jedinečné klíče a každý z nich má odpovídající hodnotu. HashMap a TreeMap jsou třídy, které implementují rozhraní Map. HashMap je mapa založená na kolekci třídy, která se používá k ukládání párů klíčů a hodnot, které neudržují konkrétní pořadí v datových prvcích. TreeMap je Mapová kolekce založená na třídě, která se používá k ukládání párů klíčů a hodnot, které udržují vzestupné pořadí datových prvků. Klíčovým rozdílem mezi HashMap a TreeMap je, že HashMap neudržuje konkrétní pořadí v datových prvcích, zatímco TreeMap udržuje vzestupné pořadí datových prvků.

OBSAH

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

2. Co je HashMap

3. Co je TreeMap

4. Podobnosti mezi HashMap a TreeMap

5. Porovnání vedle sebe - HashMap vs TreeMap ve formě tabulky

6. Shrnutí

Co je HashMap?

HashMap je třída, která implementuje mapové rozhraní. Rozšiřuje třídu AbstractMap a implementuje rozhraní Map. HashMap obsahuje páry klíč, hodnota. Každý prvek je jedinečný. Je snadné najít prvky v HashMap pomocí klíče. Deklarace HashMap je následující.

veřejná třída HashMap rozšiřuje AbstractMap implementuje Map, Cloneable, Serializable

K označuje klíč, zatímco V označuje hodnotu odpovídající tomuto konkrétnímu klíči. Každý pár klíč - hodnota je záznamem HashMap.

Rozdíl mezi HashMap a TreeMap
Rozdíl mezi HashMap a TreeMap

Obrázek 01: Rozhraní mapy

Předpokládejme následující scénář, abyste pochopili HaspMap. Pokud tam programátor chce uložit sadu jmen studentů a odpovídající čísla indexů, může použít HashMap. Jména studentů se používají k vyhledání čísel indexu. Názvy studentů jsou tedy klíče, zatímco indexová čísla jsou hodnoty.

Rozdíl mezi HashMap a TreeMap Obrázek 02
Rozdíl mezi HashMap a TreeMap Obrázek 02

Obrázek 02: Program HashMap pomocí Java

Podle výše uvedeného programu je vytvořen objekt HashMap. Potom může programátor pomocí tohoto objektu přidat prvky. Hodnoty lze vložit pomocí metody put. Pro načtení hodnot by měl programátor použít metodu get s klíčem. Při použití studentListList.get („150“); vytiskne odpovídající název indexu, kterým je Ann. Pokud chce programátor získat všechny hodnoty, může k vytištění všech klíčů a hodnot použít Map. Entry. Při pozorování výstupu je vidět, že HashMap neudržuje konkrétní pořadí. Nevytiskne prvky v vloženém pořadí. Prvky se tisknou v náhodném pořadí.

Co je TreeMap?

TreeMap je třída v Javě, která implementuje rozhraní Map. Podobně jako HashMap se také používá k ukládání párů klíčů a hodnot, ale ve vzestupném pořadí. TreeMap implementuje NavigableMap a NavigableMap rozšiřuje SortedMap a SortedMap rozšiřuje Map. Každý prvek je jedinečný. Deklarace TreeMap je následující.

veřejná třída TreeMap rozšiřuje AbstractMap implementuje NavigableMap, Cloneable, Serializable

K označuje klíč, zatímco V označuje hodnotu odpovídající tomuto konkrétnímu klíči. Každý pár klíč - hodnota je záznamem TreeMap.

Klíčový rozdíl mezi HashMap a TreeMap
Klíčový rozdíl mezi HashMap a TreeMap

Obrázek 03: Program TreeMap využívající prostředí Java

Podle výše uvedeného programu je vytvořen objekt TreeMap. Potom může programátor pomocí tohoto objektu přidat prvky. Hodnoty lze vložit pomocí metody put. Pro načtení hodnot by měl programátor použít metodu get s klíčem. Při použití studentListList.get („150“); vytiskne odpovídající název indexu, kterým je Ann. Pokud chce programátor získat všechny hodnoty, může k vytištění všech klíčů a hodnot použít Map. Entry. Při pozorování výstupu je vidět, že TreeMap udržuje konkrétní pořadí. Prvky se tisknou vzestupně.

Jaké jsou podobnosti mezi HashMap a TreeMap?

  • HashMap i TreeMap implementují rozhraní Map.
  • HashMap i TreeMap mohou ukládat a manipulovat s mnoha prvky.
  • HashMap i TreeMap obsahuje páry klíč, hodnota.
  • HashMap i TreeMap mohou mít mnoho hodnot null.
  • Počet prvků, které lze uložit v HashMap i TreeMap, není nijak omezen.

Jaký je rozdíl mezi HashMap a TreeMap?

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

HashMap vs TreeMap

HashMap je třída založená na kolekci map, která se používá k ukládání párů klíčů a hodnot, které neudržují konkrétní pořadí v datových prvcích. TreeMap je Mapová kolekce založená na třídě, která se používá k ukládání párů klíčů a hodnot, která udržuje vzestupné pořadí datových prvků.
Objednat
HashMap neudržuje pořadí. TreeMap udržuje vzestupné pořadí.
Nulový klíč
HashMap může obsahovat jeden prázdný klíč. TreeMap nemůže mít nulový klíč.
Výkon
HashMap je rychlejší než TreeMap. TreeMap je pomalejší než HashMap.

Shrnutí - HashMap vs TreeMap

Programovací jazyky, jako je Java, obsahují rámec kolekce. V polích může existovat pevný počet prvků. Proto by měla být velikost pole inicializována na začátku. V kolekcích může programátor podle potřeby uložit mnoho prvků. Neexistuje žádné konkrétní množství k uložení. Mapa je rozhraní patřící do kolekce framework. HashMap je třída založená na kolekci map, která se používá k ukládání párů klíčů a hodnot, které neudržují konkrétní pořadí v datových prvcích. TreeMap je Mapová kolekce založená na třídě, která se používá k ukládání párů klíčů a hodnot, která udržuje vzestupné pořadí datových prvků. Tento článek pojednával o rozdílu mezi HashMap a TreeMap, který implementuje rozhraní Map. Rozdíl mezi HashMap a TreeMap spočívá v tom, že HashMap neudržuje konkrétní pořadí v datových prvcích, zatímco TreeMap udržuje vzestupné pořadí datových prvků.

Doporučená: