HashMap
-Elemanlar sıralı değildir. Anahtar değerler ile tutulurlar.
-Başlangıç sığası verirsek daha performanslı çalışırlar.
-Anahtar değerler tekrar edemezler. Aynı anahtar değeri ve elemanı eklemek istediğimizde hata vermez ama null döndürür. Aynı anahtar değerde farklı bir eleman eklemek istediğimizde eski eleman yenisiyle değiştirilir.
-Map arayüzü oluştururken tip belirtmek zorunlu değildir.
Kullanılan Metotlar:
- clear() : void => Tüm verileri siler.
- containsKey(key : Object()) : boolean => Gönderilen anahtar parametresi map arayüzünde varsa true döner.
- containsValue(value : Object()): boolean => Gönderilen değer parametresi map arayüzünde varsa true döner.
- entrySet() : Set => Map arayüzü içerisindeki verileri set metodu olarak geri döndürür.
- get (key : Object()) : Object => Gönderilen anahtar parametresi ile eşleşen veriyi geri döndürür.
- isEmpty() : Boolean => Map arayüzü boş ise True, dolu ise False döndürür.
- keySet() : Set => Anahtar değerlerimizi set metodu olarak geri döndürür.
- put(key : Object() , value : Object()) : Object => Anahtar ve işaret ettiği değeri map arayüzüne ekler.
- putAll(mapping : Map) : void => Map içerisine map eklememizi sağlar.
- remove(key : Object()) : Object => Parametre olarak gönderilen anahtar değer ve işaret ettiği veri arayüzden silinir.
- size() : int => Arayüzün boyutunu döndürür.
- values() : Collection => Verileri koleksiyon yapısı olarak döndürür.
[js]
import java.util.Set;
public class HashMap {
public static void main(String[] args) {
java.util.HashMap hm=new java.util.HashMap(10,0.5f);
hm.put(34, "İstanbul");
hm.put(57, "Sinop");
hm.put(43, "Kütahya");
hm.put(26, "Eskişehir");
hm.put(54, "Sakarya");
System.out.println(hm); //Elemanlar anahtar değerler ile birlikte listelenir.
System.out.println(hm.values()); //Sadece elemanlar listelenir.
Set keys=hm.keySet(); //Anahtar değerler için set yapısı oluşturduk.
Set values=hm.entrySet(); //Anahtar değerler ve elemanlar için set yapısı oluşturduk.
System.out.println("Keys :"+keys); //Sadece anahtarlar listelenecek.
System.out.println("Values :"+values); //Anahtar değerler ile birlikte elemanlar listelenecek.
System.out.println(hm.containsKey(57)); //57 değeri varsa true dönecek
System.out.println(hm.get(34)); // 34 anahtar değerinin eşleştiği elemanı getirecek.
System.out.println(hm.isEmpty());
System.out.println(hm.size());
}
}[/js]
[js]
Çıktı:
{34=İstanbul, 54=Sakarya, 57=Sinop, 26=Eskişehir, 43=Kütahya}
[İstanbul, Sakarya, Sinop, Eskişehir, Kütahya]
Keys :[34, 54, 57, 26, 43]
Values :[34=İstanbul, 54=Sakarya, 57=Sinop, 26=Eskişehir, 43=Kütahya]
true
İstanbul
false
5
[/js]
LinkedHashMap
-Değerler birbirine bağlıdır. Giriş sırasına göre yazdırılırlar.
-Map arayüzünün genelin için geçerli metotlar bunun içinde geçerlidir.
[js]import java.util.LinkedHashMap;
import java.util.Collection;
import java.util.Set;
public class LinkedHashMapOrnek {
public static void main(String[] args) {
LinkedHashMap<String,Integer> lhm=new LinkedHashMap<String,Integer>(); //Tip belirtirken sol tarafa anahtar değerlerin tipini,sağ tarafa elemanların tipini veriyoruz.
lhm.put("İstanbul", 34);
lhm.put("Sinop", 57);
lhm.put("Kütahya", 43);
lhm.put("Eskişehir",26);
lhm.put("Sakarya", 54);
System.out.println(lhm);
System.out.println(lhm.values()); //values() metodunu Collection yapısı oluşturmadan kullanmak mümkün.
System.out.println(lhm.keySet()); //keySet() metodunu Set yapısı oluşturmadan kullanmak mümkün.
Set keys=lhm.keySet();
System.out.println(keys);
Collection values=lhm.values();
System.out.println(values);
}
}
[/js]
[js]Çıktı:
{İstanbul=34, Sinop=57, Kütahya=43, Eskişehir=26, Sakarya=54}
[34, 57, 43, 26, 54]
[İstanbul, Sinop, Kütahya, Eskişehir, Sakarya]
[İstanbul, Sinop, Kütahya, Eskişehir, Sakarya]
[34, 57, 43, 26, 54]
[/js]
SortedMap
-Elemanlar anahtar değerler ile saklanırlar ve sıralıdırlar.
Kullanılan Metotlar:
- ceilingEntry(Key) : İçerisine girilen değere eşit ve değerden büyük anahtar kelimelerle eşleşmiş verileri döndürür.
- ceilingKey(Key) : İçerisine girilen değere eşit ve değerden büyük anahtar kelimeleri listeler.
- descendingKeySet() : Anahtar setlerini azalan sırada geri döndürür.
- descendingMap () : TreeMap yapısını azalan sırada geri döndürür.
- firstEntry() : Yapı içerisindeki ilk anahtar-değer eşleşmesini geri döndürür.
- floorEntry(Key) : İçerisine girilen değere eşit ve değerden küçük anahtar kelimelerle eşleşmiş verileri döndürür.
- floorKey(Key) : İçerisine girilen değere eşit ve değerden küçük anahtar kelimeleri listeler.
- headMap(Key) : İçerisine girilen değerden küçük anahtar kelimeler ile eşleşmiş verileri döndürür.
- higherEntry(Key) : İçerisine girilen değerden büyük anahtar kelimeler ile eşleşmiş verileri döndürür.
- higherKey(Key) : İçerisine girilen değerden büyük anahtar kelimeleri döndürür.
- lastEntry() : Yapı içerisindeki son anahtar-değer eşleşmesini geri döndürür.
- lowerEntry(Key) : İçerisine girilen değerden küçük anahtar değerler ile eşleşmiş verileri döndürür.
- lowerKey(Key) : İçerisine girilen değerden küçük anahtar kelimeleri döndürür.
- pollFirstEntry() : Yapı içerisindeki ilk elemanı getirir ve daha sonra anahtar değeri ile birlikte siler.
- pollLastEntry(): Yapı içerisindeki son elemanı getirir ve daha sonra anahtar değeri ile birlikte siler.
- subMap(a,b) : a’dan b’ye kadar olan anahtar değerli anahtar-veri eşleşmelerini getirir. Burada a sıralamaya dahilken b değildir.
- tailMap(Key) : İçerisine girilen anahtar değere eşit ve değerden büyük anahtar-veri eşleşmelerini döndürür.