U svijetu Java programiranja, klasa **HashMap** je fundamentalni dio Java Collections Framework-a. Ova raznovrsna klasa pohranjuje elemente u relacije mapiranja, organizirajući podatke na osnovu parova ključ/vrijednost. Ovi parovi olakšavaju brzu pretragu i procese pronalaženja, čineći HashMap omiljenim izborom za mnoge programere. U ovom članku ćemo dublje proučiti kako možemo ispisati ključeve i vrijednosti u HashMap-u.
Rješenje problema
import java.util.HashMap;
import java.util.Map;
public class HashMapDemo {
public static void main(String[] args) {
// Create a new HashMap
HashMap<String, Integer> map = new HashMap<>();
// Add elements to the HashMap
map.put("One", 1);
map.put("Two", 2);
map.put("Three", 3);
// Print keys and values
for (Map.Entry<String, Integer> entry : map.entrySet()) {
System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());
}
}
}
Korak po korak objašnjenje koda
Java klasa **HashMap** omogućava nam da pohranimo parove elemenata, pri čemu se svaki par sastoji od ključa i vrijednosti. Ovaj oblik organizacije podataka omogućava brzu i efikasnu pretragu podataka. U svojoj srži, HashMap koristi tehniku poznatu kao **”Haširanje”**, koja prevodi pohranjene ključeve u cjelobrojne vrijednosti poznate kao heš, čineći osnovu za brzo pronalaženje podataka.
- Prvo, uvozimo potrebne klase, odnosno HashMap i Map klasu. Nakon toga, prelazimo na kreiranje mape – otuda i `HashMap
map = novi HashMap<>();` isječak. Evo, “ ” označava tipove ključeva i vrijednosti s kojima ćemo raditi. - Sljedeće, koristimo metodu `.put()` za dodavanje parova na mapu. Ključ „Jedan“ je uparen sa vrednošću 1, „Dva“ sa vrednošću 2, a „Tri“ sa vrednošću 3 – to je naša mapa popunjena.
- Na kraju, dohvaćamo i ispisujemo naše ključeve i vrijednosti koristeći for-each petlju. Unutar ove petlje, metode `entry.getKey()` i `entry.getValue()` se koriste za dobivanje ključeva i vrijednosti. Sistem ih zatim ispisuje.
Razumijevanje HashMap i Map klasa
Klase **HashMap** i **Map** čine sastavni dio Javinog okvira Collections. HashMap, koji implementira Map interfejs, dio je paketa java.util. Pruža osnovnu implementaciju Map interfejsa Jave, pohranjivanje mape u parovima ključ/vrijednost, korištenje heširanja za pohranjivanje ključeva.
Što se tiče interfejsa **Map.Entry**, on je član Java Collections Framework-a. Ovo sučelje olakšava manipulaciju svakim parom ključ/vrijednost unosa koji se nalaze na mapi, poboljšavajući efikasnost obrade.
Istraživanje metoda put() i entrySet().
Da bismo dodali elemente u HashMap, oslanjamo se na metodu **put()**. Sintaksa za isto je: `map.put(key, value);`. Sa mapom kao objektom, metoda 'put()' se poziva na njoj slanjem ključa i vrijednosti kao argumenata.
Za ispis ključeva i vrijednosti u HashMap-u, možemo koristiti metodu **entrySet()** u kombinaciji sa for-each petljom. Kada se pozove na mapi, 'entrySet()' vraća skup pogled koji se sastoji od preslikavanja sadržanih u mapi. Ovi unosi se mogu ponavljati koristeći for-each petlju, omogućavajući HashMapu da otkrije svoje ključeve i vrijednosti. Ove iteracije su fundamentalne za instanciranje Map.Entry interfejsa i vraćanje ključeva i vrednosti.