HashMap dentro Java

⚡ Riepilogo intelligente

HashMap dentro Java Memorizza i dati come coppie chiave-valore univoche che possono essere recuperate rapidamente utilizzando la chiave. Contiene riferimenti a oggetti anziché tipi primitivi, quindi vengono utilizzate classi wrapper e offre metodi come put, get, remove e containsKey.

  • Definizione di HashMap: Memorizza chiavi univoche mappate a valori per un rapido recupero tramite chiave.
  • 📦 Riferimenti agli oggetti: Contiene solo oggetti, quindi utilizzare classi wrapper come Integer al posto dei tipi primitivi.
  • 🔧 Metodi principali: put() memorizza una coppia, get() recupera un valore, remove() elimina per chiave.
  • 🔍 Ricerche: I metodi containsKey(), keySet(), values() e isEmpty() esaminano il contenuto della mappa.
  • 🧪 Esempi: I programmi di esempio creano una mappa, la stampano e rimuovono una voce tramite una chiave.

HashMap dentro Java

In cosa consiste Hashmap Java?

Una HashMap designa fondamentalmente chiavi uniche al corrispondente valori che può essere recuperato in qualsiasi momento.

HashMap dentro Java

Caratteristiche principali dell'app Java Mappa hash

a) Il valori può essere memorizzato in una mappa formando un file valore-chiave paio. Il valore può essere recuperato utilizzando la chiave passandola al metodo corretto.

b) Se nessun elemento esiste nella mappa, lancerà un 'NoSuchElementException'.

c) Solo negozi HashMap riferimenti agli oggetti. Ecco perché è impossibile da usare tipi di dati primitivi come double o int. Usa la classe wrapper (come Integer o Double) anziché.

Caratteristiche principali dell'app Java Mappa hash

Utilizzando HashMap in Java programmi:

Di seguito sono riportati i due modi per dichiarare una Hash Map:

HashMap<String, Object> map = new HashMap<String, Object>();
HashMap x  = new HashMap();

Metodi Hashmap importanti

  • get(CHIAVE oggetto) – Ciò restituirà il valore associato a una chiave specificata in this Java hashmap.
  • put(CHIAVE oggetto, VALORE stringa) – Questo metodo memorizza il valore specificato e lo associa alla chiave specificata in questa mappa.

Java Esempio di mappa hash

Di seguito è riportato un esempio di implementazione di Java Hash Map:

import java.util.HashMap;
import java.util.Map;
public class Sample_TestMaps{
  public static void main(String[] args){
    Map<String, String> objMap = new HashMap<String, String>();
    objMap.put("Name", "Suzuki");
    objMap.put("Power", "220");
    objMap.put("Type", "2-wheeler");
    objMap.put("Price", "85000");
    System.out.println("Elements of the Map:");
    System.out.println(objMap);
  }
}

Produzione:

Elements of the Map:
{Type=2-wheeler, Price=85000, Power=220, Name=Suzuki}

Esempio: rimuovere un valore da HashMap in base alla chiave

import java.util.*;
public class HashMapExample {
   public static void main(String args[]) {
   // create and populate hash map
   HashMap<Integer, String> map = new HashMap<Integer, String>();
   map.put(1,"Java");
   map.put(2, "Python");
   map.put(3, "PHP");
   map.put(4, "SQL");
   map.put(5, "C++");
   System.out.println("Tutorial in Guru99: "+ map);
   // Remove value of key 5
   map.remove(5);
   System.out.println("Tutorial in Guru99 After Remove: "+ map);
   }
}

Produzione:

Tutorial in Guru99: {1=Java, 2=Python, 3=PHP, 4=SQL, 5=C++}
Tutorial in Guru99 After Remove: {1=Java, 2=Python, 3=PHP, 4=SQL}

Facciamo alcune domande alla Hash Map stessa per conoscerla meglio

D: Quindi Mr.Hash Map, come posso sapere se ti è stata assegnata una chiave particolare?

A: Fantastico, puoi usare il metodo contieneKey(Object KEY) con me, restituirà un valore booleano se ho un valore per la chiave specificata.

D: Come trovo tutte le chiavi disponibili presenti sulla Mappa?

A: Ho un metodo chiamato as mazzo di chiavi() che restituirà tutte le chiavi sulla mappa. Nell'esempio sopra, se scrivi una riga come –
System.out.println(objMap.keySet());

Restituirà un file produzione come-
[Nome, Tipo, Potenza, Prezzo]

Allo stesso modo, se hai bisogno solo di tutti i valori, ho un metodo di valori().
System.out.println(objMap.values());

Restituirà un file produzione come-
[Suzuki, 2 ruote, 220, 85000]

D: Supponiamo di dover rimuovere solo una particolare chiave dalla mappa, devo eliminare l'intera mappa?

A: No amico!! Ho un metodo di rimuovere(Object KEY) che rimuoverà solo quella particolare coppia chiave-valore.

D: Come possiamo verificare se conteni effettivamente alcune coppie chiave-valore?

A: Controlla solo se sono vuoto o no!! In breve, usa è vuoto() metodo contro di me..

DOMANDE FREQUENTI

HashMap non è sincronizzato e consente una chiave nulla e più valori nulli, risultando quindi più veloce per l'utilizzo a singolo thread. Hashtable è sincronizzato e non consente chiavi o valori nulli, risultando quindi thread-safe ma più lento.

Sì. Una HashMap consente esattamente una chiave nulla e un numero qualsiasi di valori nulli. Il tentativo di aggiungere una seconda chiave nulla sovrascrive semplicemente il valore associato alla chiave nulla esistente.

No. HashMap non garantisce alcun ordine per le sue chiavi. Se hai bisogno di un ordine di inserimento, usa LinkedHashMap, mentre se hai bisogno di un ordine ordinato per chiave, usa TreeMap.

L'IA può analizzare i modelli di accesso come ricerche, ordinamento e esigenze di concorrenza, quindi consigliare HashMap, TreeMap, LinkedHashMap o ConcurrentHashMap, aiutandoping Gli sviluppatori scelgono la raccolta più efficiente per il loro caso d'uso.

Sì. L'analisi assistita dall'IA può segnalare una HashMap condivisa a cui accedono più thread senza sincronizzazione e consigliare l'utilizzo di ConcurrentHashMap o di un meccanismo di blocco esterno per prevenire condizioni di competizione e danneggiamento dei dati.

Riassumi questo post con: