Harita, Java'da anahtar çifti değerlerini haritalamak için kullanılan bir arayüzdür. Elemanları eklemek, güncellemek, kaldırmak için kullanılır. Oysa HashMap bir sınıftır Java toplama çerçevesi .
Harita arayüzü yalnızca uygulayıcı bir sınıfla kullanılabilir. Değerlerin anahtar çifti kombinasyonunda saklanmasına olanak tanır; yinelenen anahtarlara izin vermez; ancak yinelenen değerleri saklayabiliriz. Uygulama sınıfları aşağıdaki gibidir:
- Hash Haritası
- Karma tablo
- Ağaç Haritası
- Eşzamanlı Hash Haritası
- LinkedHashMap
HashMap, Java'da anahtar çifti değerlerini depolamak için kullanılan güçlü bir veri yapısıdır. Bir değeri ilişkili anahtarıyla eşler. Boş değerleri ve boş anahtarları saklamamızı sağlar. Senkronize olmayan bir sınıftır Java Toplamak.
Harita Arayüzünün Uygulanması
Harita arayüz uygulama sınıfı kullanılarak uygulanabilir. Aşağıdaki örneği düşünün:
import java.util.*; public class MapExample { public static void main(String args[]) { Map m = new HashMap(); //implementation of the Map Interface m.put('Abhi', new Integer(001)); //Adding elements m.put('Nick', new Integer(002)); m.put('Ketty', new Integer(003)); m.put('Paul', new Integer(004)); for (Map.Entry me : m.entrySet())// Traversing of the elements through the Map { System.out.print(me.getKey() + ':'); System.out.println(me.getValue()); } } }
Çıktı:
Nick:2 Abhi:1 Paul:4 Ketty:3
HashMap Sınıfının Uygulanması
HashMap sınıfı şu şekilde bildirilebilir:
public class HashMap extends AbstractMap implements Map, Cloneable, Serializable
HashMap'i uygulamak için aşağıdaki örneği göz önünde bulundurun:
//Java program to store the key-pair values using HashMap import java.util.*; public class HashMapDemo { public static void main(String args[]){ //HashMap implementation HashMap m=new HashMap();//Creating HashMap m.put(1,'Chris'); //Adding elements in Map m.put(2,'Morris'); m.put(3,'Sam'); m.put(4,'Cruise'); System.out.println('Iterating Hashmap...'); for(Map.Entry me : m.entrySet()){ System.out.println(me.getKey()+' '+me.getValue()); } } }
Çıktı:
Iterating Hashmap... 1 Chris 2 Morris 3 Sam 4 Cruise
Harita ve HashMap Arasındaki Temel Farklılıklar
Harita ve HashMap arasındaki bazı önemli farklar şunlardır:
- Harita bir arayüzdür ve HashMap, Java koleksiyon çerçevesinin bir sınıfıdır.
- Harita arayüzü, uygulama sınıfları kullanılarak uygulanabilir. Buna karşılık, HashMap sınıfı Harita arayüzünü uygular.
- Harita benzersiz anahtar çifti değerleri içerir. Ancak HashMap yinelenen değerleri tutabilir.
- Harita boş değerlere izin vermiyor. Ancak HashMap'in bir boş anahtarı ve birden çok değeri olabilir.
- Haritanın HashMap ve TreeMap olmak üzere iki uygulaması vardır. Oysa HashMap, Harita arayüzünü uygular ve AbstractMap sınıfını genişletir.
- Map ve HashMap nesneleri arasında hiçbir fark yoktur.