HashMap σε Java Learn with Example

Τι είναι το Hashmap στην Java;

Ένας HashMap ουσιαστικά υποδηλώνει μοναδικά κλειδιά σε αντίστοιχο αξιών που μπορεί να ανακτηθεί σε οποιοδήποτε δεδομένο σημείο.

HashMap στην Java

Χαρακτηριστικά του Java Hashmap

α) Το αξιών μπορεί να αποθηκευτεί σε χάρτη σχηματίζοντας α κλειδί-τιμή ζεύγος. Η τιμή μπορεί να ανακτηθεί χρησιμοποιώντας το κλειδί περνώντας τη στη σωστή μέθοδο.

β) Αν κανένα στοιχείο υπάρχει στον χάρτη, θα ρίξει ένα 'NoSuchElementException'.

γ) Μόνο καταστήματα HashMap αναφορές αντικειμένων. Αυτός είναι ο λόγος για τον οποίο είναι αδύνατη η χρήση πρωτόγονους τύπους δεδομένων Μου αρέσει double ή ενθ. Χρησιμοποιήστε την κλάση περιτυλίγματος (όπως Integer ή Double) αντι αυτου.

Χαρακτηριστικά του Java Hashmap

Χρήση HashMaps σε προγράμματα Java:

Following είναι οι δύο τρόποι για να δηλώσετε έναν Χάρτη Hash:

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

Σημαντικές μέθοδοι Hashmap

  • get (Κλειδί αντικειμένου) – Αυτό θα επιστρέψει την τιμή που σχετίζεται με ένα καθορισμένο κλειδί σε αυτόν τον κατακερματισμό Java.
  • put (Κλειδί αντικειμένου, ΤΙΜΗ συμβολοσειράς) – Αυτή η μέθοδος αποθηκεύει την καθορισμένη τιμή και τη συσχετίζει με το καθορισμένο κλειδί σε αυτόν τον χάρτη.

Παράδειγμα Java Hashmap

Following είναι ένα δείγμα υλοποίησης του 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);
  }
}

Παραγωγή:

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

Παράδειγμα 2: Καταργήστε μια τιμή από το HashMap με βάση το κλειδί

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);
   }
}

Παραγωγή:

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}

Ας κάνουμε μερικές ερωτήσεις στον ίδιο τον Χάρτη Hash για να τον γνωρίσουμε καλύτερα

Ε: Λοιπόν Mr.Hash Map, πώς μπορώ να βρω αν σας έχει εκχωρηθεί ένα συγκεκριμένο κλειδί;

A: Cool, μπορείτε να χρησιμοποιήσετε τη μέθοδο containKey(Object KEY) μαζί μου, θα επιστρέψει μια Boolean τιμή εάν έχω μια τιμή για το δεδομένο κλειδί.

Ε: Πώς μπορώ να βρω όλα τα διαθέσιμα κλειδιά που υπάρχουν στον Χάρτη;

Α: Έχω μια μέθοδο που ονομάζεται ως κλειδί() που θα επιστρέψει όλα τα κλειδιά στον χάρτη. Στο παραπάνω παράδειγμα, εάν γράψετε μια γραμμή ως -
System.out.println(objMap.keySet());

Θα επιστρέψει ένα παραγωγή όπως και-
[Όνομα, Τύπος, Ισχύς, Τιμή]

Ομοίως, εάν χρειάζεστε μόνο όλες τις τιμές, έχω μια μέθοδο αξιών().
System.out.println(objMap.values());

Θα επιστρέψει ένα παραγωγή όπως και-
[Suzuki, δίτροχο, 2, 220]

Ε: Ας υποθέσουμε ότι πρέπει να αφαιρέσω μόνο ένα συγκεκριμένο κλειδί από τον Χάρτη, πρέπει να διαγράψω ολόκληρο τον χάρτη;

Α: Όχι φίλε!! Έχω μια μέθοδο αφαιρέστε(Κλειδί αντικειμένου) που θα αφαιρέσει μόνο το συγκεκριμένο ζεύγος κλειδιού-τιμής.

Ε: Πώς μπορούμε να ελέγξουμε αν όντως περιέχει κάποια ζεύγη κλειδιών-τιμών;

Α: Απλά ελέγξτε αν είμαι άδειος ή όχι!! Εν ολίγοις, χρήση είναι άδειο() μέθοδος εναντίον μου..