Diferența dintre HashMap și TreeMap

Diferența cheie - HashMap vs TreeMap
 

În programare există diferite mecanisme de colectare a datelor. Colecțiile reprezintă o metodă de stocare a datelor. Limbi de programare cum ar fi colecțiile de utilizare Java. Este un cadru cu clase și interfețe pentru stocarea și manipularea unui set de elemente de date. Într-o matrice normală, există un număr fix de elemente de stocat. Aceasta este o limitare a matricelor. În schimb, programatorul poate folosi colecțiile. Operațiile cum ar fi inserarea, ștergerea, sortarea și căutarea pot fi efectuate utilizând colecții. În Java, interfața Map aparține colecțiilor. Harta este utilizată pentru a reprezenta datele din perechi de chei, valoare. Există numai chei unice și fiecare are o valoare corespunzătoare. HashMap și TreeMap sunt clase care implementează interfața Map. Un HashMap este o clasă de colectare bazată pe hărți care este utilizată pentru stocarea perechilor de chei și valori care nu mențin o anumită ordine în elementele de date. Un TreeMap este o clasă de colectare bazată pe hărți care este utilizată pentru stocarea perechilor cheie și a valorilor care mențin ordinea ascendentă a elementelor de date. diferența cheie între HashMap și TreeMap este asta HashMap nu menține o ordine specifică în elementele de date în timp ce TreeMap menține ordinea ascendentă a elementelor de date.

CUPRINS

1. Prezentare generală și diferență cheie
2. Ce este HashMap
3. Ce este TreeMap
4. Asemănări între HashMap și TreeMap
5. Comparație comparație - HashMap vs. TreeMap în formă tabulară
6. rezumat

Ce este HashMap?

HashMap este o clasă care implementează interfața hărții. Extinde clasa AbstractMap și implementează interfața hărții. Un HashMap conține perechile cheie, valoare. Fiecare element este unic. Este ușor să găsiți elementele din HashMap utilizând cheia. Declararea unui HashMap este după cum urmează.

public class HashMap se extinde AbstractMap implementează Harta, Cloneable, Serializable

K indică cheia în timp ce V se referă la valoarea corespunzătoare acelei chei specifice. Fiecare pereche cheie, valoare este o intrare a HashMap.

Figura 01: Interfața hărții

Să presupunem un scenariu după cum urmează pentru a înțelege HaspMap. Dacă acolo programatorul dorește să stocheze un set de nume de studenți și numere de index corespunzătoare, el poate folosi HashMap. Numele de studenți sunt folosite pentru a găsi numerele index. Prin urmare, numele elevilor sunt cheile în timp ce numerele index sunt valorile.

Figura 02: Programul HashMap Utilizând Java

Conform programului de mai sus, este creat un obiect al HashMap. Apoi, programatorul poate adăuga elemente care utilizează obiectul respectiv. Valorile pot fi introduse folosind metoda put. Pentru a prelua valorile, programatorul ar trebui să folosească metoda cu tasta. Când folosiți studentList.get ("150"); acesta va imprima numele corespunzător acelui index care este Ann. Dacă programatorul dorește să obțină toate valorile, el poate folosi Map.Entry pentru a imprima toate cheile și valorile. Când observăm ieșirea, se poate observa că HashMap nu menține o comandă specifică. Nu imprimă elementele în ordinea inserată. Elementele sunt tipărite în ordine aleatorie.

Ce este TreeMap?

TreeMap este o clasă în Java care implementează interfața Map. Similar cu un HashMap, el este de asemenea utilizat pentru stocarea perechilor cheie, valoare, dar în ordine ascendentă. TreeMap implementează NavigableMap și NavigableMap extinde SortedMap și SortedMap extinde Harta. Fiecare element este unic. Declararea unui TreeMap este după cum urmează.

public class TreeMap se extinde AbstractMap implementează NavigableMap, Cloneable, Serializable

K indică cheia în timp ce V se referă la valoarea corespunzătoare acelei chei specifice. Fiecare pereche cheie, valoare este o intrare a TreeMap.

Figura 03: Programul TreeMap folosind Java

Conform programului de mai sus, este creat un obiect din TreeMap. Apoi, programatorul poate adăuga elemente care utilizează obiectul respectiv. Valorile pot fi introduse folosind metoda put. Pentru a prelua valorile, programatorul ar trebui să folosească metoda cu tasta. Când folosiți studentList.get ("150"); acesta va imprima numele corespunzător acelui index care este Ann. Dacă programatorul dorește să obțină toate valorile, el poate folosi Map.Entry pentru a imprima toate cheile și valorile. La observarea rezultatelor, se poate observa că TreeMap menține o anumită ordine. Elementele sunt imprimate în ordine crescătoare.

Care sunt asemănările dintre HashMap și TreeMap?

  • Atât HashMap, cât și TreeMap implementează interfața Map.
  • Atât HashMap cât și TreeMap pot stoca și manipula multe elemente.
  • Atât HashMap cât și TreeMap conțin perechi cheie, valoare.
  • Atât HashMap cât și TreeMap pot avea multe valori nula.
  • Nu există nicio limitare a numărului de elemente care pot fi stocate atât în ​​HashMap, cât și în TreeMap.

Care este diferența dintre HashMap și TreeMap?

HashMap vs TreeMap

Un HashMap este o clasă de colectare bazată pe hărți care este utilizată pentru stocarea perechilor cheie și a valorilor care nu mențin o anumită ordine în elementele de date. Un TreeMap este o clasă de colectare bazată pe hărți care este utilizată pentru stocarea perechilor cheie și a valorilor care menține ordinea ascendentă a elementelor de date.
 Ordin
HashMap nu menține ordinea. TreeMap menține ordinea ascendentă.
Null Key
HashMap poate conține o cheie nulă. TreeMap nu poate avea o cheie nulă.
 Performanţă
HashMap este mai rapid decât TreeMap. TreeMap este mai lent decât HashMap.

rezumat - HashMap vs TreeMap

Limbile de programare, cum ar fi Java, conțin cadrul de colectare. În matrice, poate exista un număr fix de elemente. Prin urmare, dimensiunea matricei ar trebui inițializată la început. În colecții, programatorul poate stoca multe elemente, după cum este necesar. Nu există o sumă specifică de stocat. Harta este o interfață care aparține cadrului de colectare. Un HashMap este o clasă de colectare bazată pe hărți care este utilizată pentru stocarea perechilor cheie și a valorilor care nu mențin o anumită ordine în elementele de date. Un TreeMap este o clasă de colectare bazată pe hărți, care este utilizată pentru stocarea perechilor de chei și valoare care menține ordinea ascendentă a elementelor de date. Acest articol a discutat diferența dintre HashMap și TreeMap care implementează interfața Map. Diferența dintre HashMap și TreeMap este că HashMap nu menține o ordine specifică în elementele de date în timp ce TreeMap menține ordinea ascendentă a elementelor de date.

Referinţă:

1. "HashMap în Java - javatpoint". Punctul, Disponibil aici
2. "TreeMap în Java - javatpoint".  Punctul, Disponibil aici

Datorită fotografiei:

1. "Ierarhia java.util.Map" prin rama - Lucrare proprie, (CC BY-SA 4.0) prin intermediul Commons Wikimedia