Różnica między HashMap a TreeMap

Kluczowa różnica - HashMap vs. TreeMap
 

W programowaniu istnieją różne mechanizmy gromadzenia danych. Kolekcje to jedna z metod przechowywania danych. Języki programowania, takie jak Java, używają Kolekcje. Jest to framework z klasami i interfejsami do przechowywania i manipulowania zestawem elementów danych. W normalnej tablicy istnieje stała liczba elementów do przechowywania. To ograniczenie tablic. Zamiast tego programista może używać kolekcji. Operacje takie jak wstawianie, usuwanie, sortowanie i wyszukiwanie można wykonywać przy użyciu kolekcji. W Javie interfejs Map należy do kolekcji. Mapa służy do reprezentowania danych w parach klucz-wartość. Istnieją tylko unikalne klucze, a każdy ma odpowiednią wartość. HashMap i TreeMap to klasy, które implementują interfejs Map. HashMap to klasa kolekcji oparta na mapie, która służy do przechowywania par kluczy i wartości, które nie utrzymują określonej kolejności w elementach danych. TreeMap to klasa kolekcji oparta na mapie, która służy do przechowywania par kluczy i wartości, które utrzymują rosnącą kolejność elementów danych. The kluczowa różnica między HashMap i TreeMap jest to HashMap nie utrzymuje określonej kolejności elementów danych, podczas gdy TreeMap utrzymuje rosnącą kolejność elementów danych.

ZAWARTOŚĆ

1. Przegląd i kluczowa różnica
2. Co to jest HashMap
3. Co to jest TreeMap
4. Podobieństwa między HashMap i TreeMap
5. Porównanie obok siebie - HashMap vs TreeMap w formie tabelarycznej
6. Podsumowanie

Co to jest HashMap?

HashMap to klasa implementująca interfejs mapy. Rozszerza klasę AbstractMap i implementuje interfejs Map. HashMap zawiera pary klucz-wartość. Każdy element jest unikalny. Łatwo jest znaleźć elementy w HashMap za pomocą klucza. Zadeklarowanie HashMap wygląda następująco.

klasa publiczna HashMap rozszerza AbstractMap implementuje Map, Cloneable, Serializable

K odnosi się do klucza, podczas gdy V odnosi się do wartości odpowiadającej temu konkretnemu kluczowi. Każdy klucz, para wartości jest wpisem HashMap.

Rysunek 01: Interfejs mapy

Załóżmy następujący scenariusz, aby zrozumieć HaspMap. Jeśli tam programista chce przechowywać zestaw nazwisk uczniów i odpowiadających im numerów indeksów, może użyć HashMap. Nazwiska studentów służą do wyszukiwania numerów indeksów. Dlatego imiona i nazwiska studentów są kluczami, a numery indeksów wartościami.

Rysunek 02: Program HashMap przy użyciu Java

Zgodnie z powyższym programem tworzony jest obiekt HashMap. Następnie programista może dodawać elementy za pomocą tego obiektu. Wartości można wstawiać za pomocą metody put. Aby pobrać wartości, programista powinien użyć metody get z kluczem. Podczas korzystania z studentList.get („150”); wypisze odpowiednią nazwę do tego indeksu, którym jest Ann. Jeśli programista chce uzyskać wszystkie wartości, może użyć Map.Entry do wydrukowania wszystkich kluczy i wartości. Obserwując dane wyjściowe, można zauważyć, że HashMap nie utrzymuje określonej kolejności. Nie drukuje elementów we wstawionej kolejności. Elementy są drukowane w losowej kolejności.

Co to jest TreeMap?

TreeMap to klasa w Javie, która implementuje interfejs Map. Podobnie jak HashMap, służy również do przechowywania par klucz-wartość, ale w kolejności rosnącej. TreeMap implementuje NavigableMap, a NavigableMap rozszerza SortedMap, a SortedMap rozszerza Mapę. Każdy element jest unikalny. Zadeklarowanie TreeMap wygląda następująco.

TreeMap klasy publicznej rozszerza AbstractMap implementuje NavigableMap, Cloneable, Serializable

K odnosi się do klucza, podczas gdy V odnosi się do wartości odpowiadającej temu konkretnemu kluczowi. Każda para klucz-wartość jest wpisem TreeMap.

Rysunek 03: Program TreeMap przy użyciu Java

Zgodnie z powyższym programem tworzony jest obiekt TreeMap. Następnie programista może dodawać elementy za pomocą tego obiektu. Wartości można wstawiać za pomocą metody put. Aby pobrać wartości, programista powinien użyć metody get z kluczem. Podczas korzystania z studentList.get („150”); wypisze odpowiednią nazwę do tego indeksu, którym jest Ann. Jeśli programista chce uzyskać wszystkie wartości, może użyć Map.Entry do wydrukowania wszystkich kluczy i wartości. Obserwując dane wyjściowe, można zauważyć, że TreeMap utrzymuje określoną kolejność. Elementy są drukowane w kolejności rosnącej.

Jakie są podobieństwa między HashMap a TreeMap?

  • Zarówno HashMap, jak i TreeMap implementują interfejs Map.
  • Zarówno HashMap, jak i TreeMap mogą przechowywać i manipulować wieloma elementami.
  • Zarówno HashMap, jak i TreeMap zawiera pary klucz-wartość.
  • Zarówno HashMap, jak i TreeMap mogą mieć wiele wartości null.
  • Nie ma ograniczenia liczby elementów, które mogą być przechowywane zarówno w HashMap, jak i TreeMap.

Jaka jest różnica między HashMap a TreeMap?

HashMap vs TreeMap

HashMap to klasa kolekcji oparta na mapie, która służy do przechowywania par kluczy i wartości, które nie utrzymują określonej kolejności w elementach danych. TreeMap to klasa kolekcji oparta na mapie, używana do przechowywania par kluczy i wartości, która utrzymuje rosnącą kolejność elementów danych.
 Zamówienie
HashMap nie utrzymuje kolejności. TreeMap utrzymuje rosnącą kolejność.
Null Key
HashMap może zawierać jeden klucz zerowy. TreeMap nie może mieć klucza zerowego.
 Występ
HashMap jest szybszy niż TreeMap. TreeMap działa wolniej niż HashMap.

streszczenie - HashMap vs TreeMap

Języki programowania, takie jak Java, zawierają strukturę kolekcji. W tablicach może znajdować się stała liczba elementów. Dlatego rozmiar tablicy powinien zostać zainicjowany na początku. W kolekcjach programista może przechowywać wiele elementów zgodnie z wymaganiami. Nie ma określonej kwoty do przechowywania. Mapa jest interfejsem należącym do frameworka kolekcji. HashMap to klasa kolekcji oparta na mapie, która służy do przechowywania par kluczy i wartości, które nie utrzymują określonej kolejności w elementach danych. TreeMap to klasa kolekcji oparta na mapie, używana do przechowywania par kluczy i wartości, która utrzymuje rosnącą kolejność elementów danych. W tym artykule omówiono różnicę między HashMap a TreeMap, która implementuje interfejs Map. Różnica między HashMap i TreeMap polega na tym, że HashMap nie utrzymuje określonej kolejności elementów danych, podczas gdy TreeMap utrzymuje rosnącą kolejność elementów danych.

Odniesienie:

1. „HashMap w Javie - javatpoint.” Punkt, Dostępny tutaj
2. „TreeMap w Javie - javatpoint.”  Punkt, Dostępny tutaj

Zdjęcie dzięki uprzejmości:

1.'Hava.util.Map hierarchy 'Przez ramlmn - Praca własna, (CC BY-SA 4.0) przez Commons Wikimedia