logo

Java'da Sözlük Sınıfı

Java'da, Sözlük anahtar/değer çiftlerinin listesidir. Java Dictionary sınıfını kullanarak değerleri saklayabilir, alabilir, kaldırabilir, alabilir ve sözlüğe koyabiliriz. Bu bölümde şunları tartışacağız: Java Sözlük Harita arayüzünde olduğu gibi verileri anahtar/değer çiftleri halinde saklayan sınıf.

Java Sözlük Sınıfı

Java Sözlük sınıf, herhangi bir sınıfın soyut bir sınıf ebeveyn sınıfıdır. A ait java.util paket. Doğrudan bilinen alt sınıfı Karma tablo sınıf. Hashtable sınıfı gibi, aynı zamanda anahtarları değerlerle eşleştirir. Her anahtarın ve değerin bir nesne olduğunu ve boş olmayan herhangi bir nesnenin anahtar ve değer olarak kullanılabileceğini unutmayın. Dictionary sınıfı hiyerarşisi aşağıdaki gibidir:

Java'da Sözlük Sınıfı

Aşağıdaki şekilde gösterildiği gibi her anahtar en fazla bir değerle ilişkilendirilir. Değer bir sözlük nesnesinde saklandıktan sonra anahtarı kullanarak onu alabiliriz.

Java'da Sözlük Sınıfı

Sözdizimi:

 public abstract class Dictionary extends Object 

Not: Sınıf eskidir. Bu nedenle sınıfı genişletmek yerine harita arayüzünü uygulayın.

Sözlük Sınıfı Oluşturucusu

Sınıfın yalnızca adı verilen bir yapıcısı vardır. ayak tabanı yapıcı.

bu cihazdaki gizli uygulamalar

Sözdizimi:

 public Dictionary() 

Sözlük Sınıfı Yöntemleri

Dictionary sınıfının tüm yöntemleri soyut . Aşağıdaki tabloda yöntemler açıklanmaktadır.

Yöntem Tanım
genel özet Numaralandırma öğeleri () Bu sözlükteki değerlerin numaralandırılmasını döndürür. Döndürülen enum nesnesi, bu sözlükteki girişlerde bulunan tüm öğeleri üretir.
genel özet V get(Nesne anahtarı) Bu sözlükte anahtarın eşlendiği değeri döndürür. Bu sözlükteki bir nesneyi (anahtarı) ayrıştırır. Bu sözlük belirtilen anahtar için bir giriş içeriyorsa ilişkili değerin döndürüldüğünü unutmayın; aksi takdirde null değeri döndürülür. Anahtar null ise NullPointerException değerini atar.
genel soyut boolean isEmpty() Yöntem, bu sözlüğün hiçbir anahtarı değerle eşleyip eşleştirmediğini kontrol eder. Yalnızca bu sözlük hiçbir giriş içermiyorsa true değerini döndürür, aksi takdirde false değerini döndürür.
genel özet Numaralandırma anahtarları () Bu sözlükteki anahtarların bir listesini döndürür. Döndürülen enum nesnesi, bu sözlüğün girdileri içerdiği tüm anahtarları oluşturur.
genel soyut V put(K tuşu, V değeri) Yöntem, sözlüğe anahtar/değer çiftini eklemek için kullanılır. Belirtilen anahtarı bu sözlükteki belirtilen değerle eşler. Ne anahtarın ne de değerin boş olamayacağını unutmayın.
Sözlük, belirtilen anahtar için zaten bir giriş içeriyorsa, giriş yeni öğeyi içerecek şekilde değiştirildikten sonra, söz konusu anahtar için bu sözlükte zaten bulunan değer döndürülür.
Sözlükte belirtilen anahtar için halihazırda bir giriş yoksa, belirtilen anahtar ve değer için bir giriş oluşturulur ve null değeri döndürülür.
Anahtar ve değeri parametre olarak ayrıştırır. Anahtar veya değer null ise NullPointerException oluşturur.
genel özet V kaldır (Nesne anahtarı) Yöntem, kaldırmak istediğimiz bir anahtarı ayrıştırır. Anahtarı ve ilişkili değeri kaldırır. Anahtar sözlükte değilse yöntemin hiçbir şey yapmayacağını unutmayın. Anahtar null ise NullPointerException değerini atar.
genel soyut int size() Bu sözlükteki girişlerin (farklı anahtarların) sayısını döndürür.

Java Sözlük Programları

Dictionary.put() Yönteminin Kullanımı

put() yöntemi, öğeleri sözlüğe ekler. Aşağıdaki program da aynısını göstermektedir.

InsertElementExample.java

 import java.util.*; public class InsertElementExample { public static void main(String args[]) { //creating a dictionary Dictionary dict = new Hashtable(); //adding values in the dictionary dict.put(101, 'Sydney'); dict.put(102, 'Brisbane'); dict.put(103, 'Melbourne'); dict.put(104, 'Perth'); dict.put(105, 'Lismore'); dict.put(106, 'Mount Gambier'); dict.put(107, 'Nelson Bay'); dict.put(108, 'Canberra'); //prints keys and corresponding values System.out.println(dict); } } 

Çıktı:

android gamepigeon oynayabilir mi
 {108=Canberra, 107=Nelson Bay, 106=Mount Gambier, 105=Lismore, 104=Perth, 103=Melbourne, 102=Brisbane, 101=Sydney} 

Dictionary.size() Yönteminin Kullanımı

Sözlüğün boyutu, sözlüğün içerdiği öğelerin sayısıdır. Aşağıdaki programda sözlüğün boyutu 6'dır.

DictionarySizeExample.java

 import java.util.*; public class DictionarySizeExample { public static void main(String args[]) { //creating a dictionary Dictionary dict = new Hashtable(); //adding values in the dictionary dict.put(101, 'Sydney'); dict.put(102, 'Brisbane'); dict.put(103, 'Melbourne'); dict.put(104, 'Perth'); dict.put(107, 'Nelson Bay'); dict.put(108, 'Canberra'); //prints the size of the dictionary System.out.println('The size of the dictionary is: '+dict.size()); } } 

Çıktı:

 The size of the dictionary is: 6 

Dictionary.get() Yönteminin Kullanımı

Get() metodunu kullanarak belirtilen bir anahtarın değerini alabiliriz.

ilişki kompozisyonu

DictionaryGetElement.java

 import java.util.*; public class DictionaryGetElement { public static void main(String args[]) { //creating a dictionary Dictionary dict = new Hashtable(); //adding values in the dictionary dict.put(101, 'Sydney'); dict.put(102, 'Brisbane'); dict.put(103, 'Melbourne'); dict.put(104, 'Perth'); dict.put(107, 'Nelson Bay'); dict.put(108, 'Canberra'); //gets the value of the specified key System.out.println('The value of the specified key is: '+dict.get(103)); } } 

Çıktı:

 The value of the specified key is: Melbourne 

Dictionary.isEmpty() Yönteminin Kullanımı

Sözlük boşsa true değerini döndürür, aksi takdirde false değerini döndürür.

EmptyCheckExample.java

 import java.util.*; public class EmptyCheckExample { public static void main(String args[]) { //creating a dictionary Dictionary dict = new Hashtable(); //adding values in the dictionary dict.put(101, 'Sydney'); dict.put(102, 'Brisbane'); dict.put(103, 'Melbourne'); dict.put(104, 'Perth'); //checks if the dictionary is empty or not System.out.println('Is the dictionary empty? 
'+dict.isEmpty()); } } 

Çıktı:

 Is the dictionary empty? false 

Dictionary.remove() Yönteminin Kullanımı

Yöntem, yöntemde ayrıştırdığımız anahtarı ve karşılık gelen değeri kaldırır. Kaldırılan değer yöntem tarafından döndürülür.

RemoveElementExample.java

 import java.util.*; public class RemoveElementExample { public static void main(String args[]) { //creating a dictionary Dictionary dict = new Hashtable(); //adding values in the dictionary dict.put(101, 'Sydney'); dict.put(108, 'Canberra'); dict.put(106, 'Mount Gambier'); dict.put(104, 'Perth'); dict.put(102, 'Brisbane'); //removes the corresponding value of the specified key System.out.println('The removed value is: '+dict.remove(106)); } } 

Çıktı:

 The removed value is: Mount Gambier 

elements() ve key() Yöntemlerinin Kullanımı

RemoveElementExample.java

autocad'de 3 boyutlu
 import java.util.*; public class IterateKeyAndValuesExample { public static void main(String args[]) { //creating a dictionary Dictionary dict = new Hashtable(); //adding values in the dictionary dict.put(101, 'Sydney'); dict.put(102, 'Brisbane'); dict.put(103, 'Melbourne'); dict.put(104, 'Perth'); dict.put(105, 'Lismore'); dict.put(106, 'Mount Gambier'); dict.put(107, 'Nelson Bay'); dict.put(108, 'Canberra'); System.out.println('Dictionary values are: 
'); //loop iterate over the values stored in the dictionary for(Enumeration enm = dict.elements(); enm.hasMoreElements();) { //prints the value System.out.println(enm.nextElement()); } System.out.println('
Dictionary keys are: 
'); //loop iterate over the keys stored in the dictionary for(Enumeration enm = dict.keys(); enm.hasMoreElements();) { //prints the keys System.out.println(enm.nextElement()); } } } 

Çıktı:

 Dictionary values are: Canberra Nelson Bay Mount Gambier Lismore Perth Melbourne Brisbane Sydney Dictionary keys are: 108 107 106 105 104 103 102 101 

HashMap ve Sözlük Sınıfı Arasındaki Fark

Java Hash Haritası class ve Dictionary sınıfının her ikisi de benzer bir işlevi yerine getirir. Tek fark şu ki HashMap Harita Arayüzünü uygularken Dictionary sınıfı uygulamaz . Java belgelerine göre, Dictionary sınıfı güncel olmadığı için artık kullanılmamaktadır. Dictionary sınıfı yerine HashMap sınıfı kullanılır. Çünkü HashMap'in bir tür sözlük olduğunu söyleyebiliriz.