Java Hash Haritası
Java Hash Haritası
Bu bölümde, Dizilerin öğeleri sıralı bir koleksiyon olarak sakladığını ve bunlara bir dizin numarası ( tür) ArrayList
ile erişmeniz gerektiğini öğrendiniz . int
Ancak HashMap
, öğeleri " anahtar / değer " çiftlerinde saklayın ve bunlara başka bir türde bir dizinle erişebilirsiniz (örneğin a String
).
Bir nesne, başka bir nesnenin (değer) anahtarı (dizin) olarak kullanılır. Farklı türleri saklayabilir: String
anahtarlar ve Integer
değerler veya aynı tür, örneğin: String
anahtarlar ve String
değerler:
Örnek
Anahtarları ve değerleri depolayacak olan büyükşehirler adlı bir HashMap
nesne oluşturun :String
String
import java.util.HashMap; // import the HashMap class
HashMap<String, String> capitalCities = new HashMap<String, String>();
Öğe Ekle
Sınıfın HashMap
birçok faydalı yöntemi vardır. Örneğin, ona öğe eklemek için şu put()
yöntemi kullanın:
Örnek
// Import the HashMap class
import java.util.HashMap;
public class Main {
public static void main(String[] args) {
// Create a HashMap object called capitalCities
HashMap<String, String> capitalCities = new HashMap<String, String>();
// Add keys and values (Country, City)
capitalCities.put("England", "London");
capitalCities.put("Germany", "Berlin");
capitalCities.put("Norway", "Oslo");
capitalCities.put("USA", "Washington DC");
System.out.println(capitalCities);
}
}
Bir Öğeye Erişim
içindeki bir değere erişmek HashMap
için get()
yöntemi kullanın ve anahtarına bakın:
Örnek
capitalCities.get("England");
Bir Öğeyi Kaldır
Bir öğeyi kaldırmak için remove()
yöntemi kullanın ve anahtara bakın:
Örnek
capitalCities.remove("England");
Tüm öğeleri kaldırmak için şu clear()
yöntemi kullanın:
Örnek
capitalCities.clear();
HashMap Boyutu
Kaç tane öğe olduğunu bulmak için size()
yöntemi kullanın:
Örnek
capitalCities.size();
HashMap Üzerinden Döngü
Bir for-each döngüsü HashMap
ile a öğeleri arasında dolaşın.
Not:keySet()
Yalnızca anahtarları istiyorsanız yöntemi kullanın ve yalnızca values()
değerleri istiyorsanız yöntemi kullanın:
Örnek
// Print keys
for (String i : capitalCities.keySet()) {
System.out.println(i);
}
Örnek
// Print values
for (String i : capitalCities.values()) {
System.out.println(i);
}
Örnek
// Print keys and values
for (String i : capitalCities.keySet()) {
System.out.println("key: " + i + " value: " + capitalCities.get(i));
}
Diğer çeşitler
HashMap'teki anahtarlar ve değerler aslında nesnelerdir. Yukarıdaki örneklerde "String" türünden nesneler kullandık. Java'daki bir String'in bir nesne olduğunu (ilkel bir tür değil) unutmayın. int gibi diğer türleri kullanmak için eşdeğer bir sarmalayıcı sınıfı belirtmelisiniz : Integer
. Diğer ilkel türler için şunu kullanın: Boolean
boolean Character
için, char Double
için, çift için vb:
Örnek
Anahtarları ve değerleri depolayacak
kişiler adında bir HashMap
nesne oluşturun :String
Integer
// Import the HashMap class
import java.util.HashMap;
public class Main {
public static void main(String[] args) {
// Create a HashMap object called people
HashMap<String, Integer> people = new HashMap<String, Integer>();
// Add keys and values (Name, Age)
people.put("John", 32);
people.put("Steve", 30);
people.put("Angie", 33);
for (String i : people.keySet()) {
System.out.println("key: " + i + " value: " + people.get(i));
}
}
}