Rozdiel Medzi HashMap A TreeMap

Obsah:

Rozdiel Medzi HashMap A TreeMap
Rozdiel Medzi HashMap A TreeMap

Video: Rozdiel Medzi HashMap A TreeMap

Video: Rozdiel Medzi HashMap A TreeMap
Video: Филипп Зимбардо: Психология зла 2024, November
Anonim

Kľúčový rozdiel - HashMap vs TreeMap

V programovaní existujú rôzne mechanizmy na zber údajov. Zbierky sú jednou z metód ukladania údajov. Programovacie jazyky, ako je Java, používajú kolekcie. Je to rámec s triedami a rozhraniami na ukladanie a manipuláciu so sadou dátových prvkov. V normálnom poli je pevný počet prvkov na uloženie. To je obmedzenie polí. Namiesto toho môže programátor používať zbierky. Pomocou zbierok je možné vykonávať operácie, ako je vkladanie, odstraňovanie, triedenie a vyhľadávanie. V Jave patrí rozhranie Mapy do zbierok. Mapa sa používa na reprezentáciu údajov v pároch kľúč - hodnota. Existujú iba jedinečné kľúče a každý z nich má zodpovedajúcu hodnotu. HashMap a TreeMap sú triedy, ktoré implementujú rozhranie Map. HashMap je trieda zbierky založená na mape, ktorá sa používa na ukladanie párov kľúčov a hodnôt, ktoré neudržujú konkrétne poradie v údajových prvkoch. TreeMap je trieda zbierky založená na mape, ktorá sa používa na ukladanie párov kľúčov a hodnôt, ktoré udržiavajú vzostupné poradie údajových prvkov. Kľúčový rozdiel medzi HashMap a TreeMap je ten, že HashMap neudržuje konkrétne poradie v dátových prvkoch, zatiaľ čo TreeMap zachováva vzostupné poradie dátových prvkov.

OBSAH

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

2. Čo je HashMap

3. Čo je TreeMap

4. Podobnosti medzi HashMap a TreeMap

5. Porovnanie vedľa seba - HashMap vs TreeMap vo forme tabuľky

6. Zhrnutie

Čo je HashMap?

HashMap je trieda, ktorá implementuje mapové rozhranie. Rozširuje triedu AbstractMap a implementuje rozhranie Map. HashMap obsahuje páry kľúč - hodnota. Každý prvok je jedinečný. Prvky v HashMape je ľahké nájsť pomocou klávesu. Deklarovanie HashMap je nasledovné.

verejná trieda HashMap rozširuje AbstractMap implementuje Map, Cloneable, Serializable

K označuje kľúč, zatiaľ čo V označuje hodnotu zodpovedajúcu konkrétnemu kľúču. Každý pár kľúč - hodnota je záznamom HashMap.

Rozdiel medzi HashMap a TreeMap
Rozdiel medzi HashMap a TreeMap

Obrázok 01: Rozhranie mapy

Pre pochopenie HaspMap predpokladajte nasledujúci scenár. Ak tam chce programátor uložiť množinu mien študentov a zodpovedajúce indexové čísla, môže použiť HashMap. Mená študentov sa používajú na vyhľadanie indexových čísel. Mená študentov sú preto kľúčmi, zatiaľ čo indexové čísla sú hodnoty.

Rozdiel medzi HashMap a TreeMap Obrázok 02
Rozdiel medzi HashMap a TreeMap Obrázok 02

Obrázok 02: Program HashMap pomocou Java

Podľa vyššie uvedeného programu sa vytvorí objekt HashMap. Potom môže programátor pomocou tohto objektu pridať prvky. Hodnoty je možné vkladať pomocou metódy put. Na načítanie hodnôt by mal programátor použiť metódu get s kľúčom. Keď používate studentList.get („150“); vypíše zodpovedajúci názov k tomuto indexu, ktorým je Ann. Ak chce programátor získať všetky hodnoty, môže na vytlačenie všetkých kľúčov a hodnôt použiť program Map. Entry. Pri pozorovaní výstupu je vidieť, že HashMap neudržuje konkrétne poradie. Nevytlačí prvky v vloženom poradí. Prvky sa tlačia v náhodnom poradí.

Čo je TreeMap?

TreeMap je trieda v Jave, ktorá implementuje rozhranie Map. Podobne ako HashMap sa používa aj na ukladanie párov kľúčov a hodnôt, ale vo vzostupnom poradí. TreeMap implementuje NavigableMap a NavigableMap rozširuje SortedMap a SortedMap rozširuje Map. Každý prvok je jedinečný. Deklarovanie TreeMap je nasledovné.

verejná trieda TreeMap rozširuje AbstractMap implementuje NavigableMap, Cloneable, Serializable

K označuje kľúč, zatiaľ čo V označuje hodnotu zodpovedajúcu konkrétnemu kľúču. Každý pár kľúč - hodnota je záznamom TreeMap.

Kľúčový rozdiel medzi HashMap a TreeMap
Kľúčový rozdiel medzi HashMap a TreeMap

Obrázok 03: Program TreeMap pomocou Javy

Podľa vyššie uvedeného programu sa vytvorí objekt TreeMap. Potom môže programátor pomocou tohto objektu pridať prvky. Hodnoty je možné vkladať pomocou metódy put. Na načítanie hodnôt by mal programátor použiť metódu get s kľúčom. Keď používate studentList.get („150“); vypíše zodpovedajúci názov k tomuto indexu, ktorým je Ann. Ak chce programátor získať všetky hodnoty, môže na vytlačenie všetkých kľúčov a hodnôt použiť program Map. Entry. Pri pozorovaní výstupu je vidieť, že TreeMap udržuje konkrétne poradie. Prvky sa tlačia vzostupne.

Aké sú podobnosti medzi HashMap a TreeMap?

  • HashMap aj TreeMap implementujú mapové rozhranie.
  • HashMap aj TreeMap môžu ukladať a manipulovať s mnohými prvkami.
  • HashMap aj TreeMap obsahuje páry kľúčov a hodnôt.
  • HashMap aj TreeMap môžu mať veľa nulových hodnôt.
  • Počet prvkov, ktoré je možné uložiť v programoch HashMap a TreeMap, nie je nijako obmedzený.

Aký je rozdiel medzi HashMap a TreeMap?

Rozdielny článok v strede pred tabuľkou

HashMap vs TreeMap

HashMap je trieda zbierky založená na mape, ktorá sa používa na ukladanie párov kľúčov a hodnôt, ktoré neudržujú konkrétne poradie v dátových prvkoch. TreeMap je trieda zbierky založená na mape, ktorá sa používa na ukladanie párov kľúčov a hodnôt, ktorá udržuje vzostupné poradie údajových prvkov.
objednať
HashMap neudržuje poradie. TreeMap udržuje vzostupné poradie.
Nulový kľúč
HashMap môže obsahovať jeden nulový kľúč. TreeMap nemôže mať nulový kľúč.
Výkon
HashMap je rýchlejší ako TreeMap. TreeMap je pomalší ako HashMap.

Zhrnutie - HashMap vs TreeMap

Programovacie jazyky, ako je Java, obsahujú rámec zhromažďovania. V poliach môže byť pevný počet prvkov. Preto by sa veľkosť poľa mala inicializovať na začiatku. V zbierkach môže programátor podľa potreby uložiť veľa prvkov. Nie je potrebné skladovať žiadne konkrétne množstvo. Mapa je rozhraním patriacim do zbierkového rámca. HashMap je trieda zbierky založená na mape, ktorá sa používa na ukladanie párov kľúčov a hodnôt, ktoré neudržujú konkrétne poradie v dátových prvkoch. TreeMap je trieda zbierky založená na mape, ktorá sa používa na ukladanie párov kľúčov a hodnôt, ktorá udržuje vzostupné poradie údajových prvkov. Tento článok pojednáva o rozdieloch medzi programami HashMap a TreeMap, ktoré implementujú rozhranie Map. Rozdiel medzi HashMap a TreeMap je v tom, že HashMap neudržuje konkrétne poradie v dátových prvkoch, zatiaľ čo TreeMap zachováva vzostupné poradie dátových prvkov.

Odporúčaná: