Map.Entry Java-da


Java Xəritə-girişBaxılıb 39

Map.Entry Java-dadır interface bir xəritə daxilində girişlərimizə imkan verən Java-da. İçərisindəki bir yuvadır Xəritə interfeysi və buna görə də Map.Entry olaraq istifadə edirik. Bu təlimatda Java-da Map.Entry Interface-i müxtəlif metodlardan istifadə edərək nümunələrlə müzakirə edəcəyik.

Map.Entry interfeysindən istifadə edərək HashMap, TreeMap və s. Kimi hər hansı bir Xəritə elementləri arasında gezinebilir və hər giriş üçün düymələri və dəyərləri ayrı-ayrılıqda əldə edə bilərik. Bir inputSet-dəki hər düymə üçün dəyərləri ayrıca olaraq yeniləyə bilərik.

Xəritə. Giriş interfeysi bəyannaməsi

Aşağıda Java-da Map.Entry interfeysinin elanı verilmişdir

interface Entry {
     K getKey();
     V getValue();
     ...
     ...
}

metodika

The entrySet() Xəritə interfeysinin metodu müəyyən bir obyekti qaytarır. Bundan istifadə edərək xəritədəki müxtəlif elementləri təkrarlaya bilərik. EntrySet dəyərlərinə daxil olmaq üçün Map.Entry interfeys metodlarını aşağıdakı kimi istifadə edə bilərik:

metodikatəsvir
boolean bərabərdir (Object o)İki obyekt girişinin bərabər olduğunu müqayisə edir
Obyekt getKey ()Girişə uyğun açarı qaytarır
Obyekt getValue ()Girişə uyğun dəyəri qaytarır
Obyekt setValue (Obyekt dəyəri)Köhnə dəyəri göstərilən yeni dəyərlə əvəz edir
int hashCode ()Müvafiq girişin hashcode dəyərini qaytarır

Java xəritəsi. Giriş nümunələri

İndi Java-da müxtəlif Map.Entry interfeysinə metodlarından istifadə edərək nümunələr göstərək.

Nümunə: getKey () və getValue () metodlarının istifadəsi

Bu nümunə, istifadə olunan girişlərin düymələrini və dəyərlərini necə götürəcəyini göstərir getKey()getValue() metodlar. Əvvəlcə TreeMap və elementlərini istifadə edərək yaradırıq put() metod. Sonra, bir inputSet yaradırıq və TreeMap iteratoruna giriş əldə etmək üçün yineleyici metodundan istifadə edirik. Nəhayət, təkrarlama zamanı hər bir inputSet-i Map.Entry obyektinə çevirə bilərik və ayrı-ayrı düyməyə və dəyərə ayrı-ayrılıqda daxil ola bilərik.

import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;

public class MapEntryDemo {

  public static void main(String[] args) {
    TreeMap<Integer, String> tm = new TreeMap<Integer, String>();
    tm.put(100, "Akash");
    tm.put(200, "Bharat");
    tm.put(300, "Chetan");
    tm.put(400, "Dev");
    tm.put(500, "Eshwar");
    
    Set s = tm.entrySet();
    Iterator i = s.iterator();
    
    while(i.hasNext()) {
      Map.Entry me = (Map.Entry)i.next();
      System.out.println("Key:" + me.getKey() + " Value: " + me.getValue());
    }

  }

}
Key:100 Value: Akash
Key:200 Value: Bharat
Key:300 Value: Chetan
Key:400 Value: Dev
Key:500 Value: Eshwar

Misal: setValue () metodu

İstifadə edərək girişSetindəki dəyərləri əvəz edə bilərik setValue() Java-da Map.Entry interfeysinin metodu. Aşağıdakı bir nümunə ilə bunu başa düşə bilərik.

Burada birbaşa EntrySet-dən Map.Entry obyekti yaradırıq və for ilmə. For döngüsü içərisində hər giriş üçün dəyəri setValue() metodu.

import java.util.HashMap;
import java.util.Map;
import java.util.Set;

public class MapEntryReplace {

  public static void main(String[] args) {
    HashMap<String,Integer> hm = new HashMap<String, Integer>();
    hm.put("A1020", 1000);
    hm.put("A1021", 4000);
    hm.put("A1022", 3200);
    hm.put("A1023", 2500);
    hm.put("A1024", 4900);
    
    Set<Map.Entry<String, Integer>> s = hm.entrySet();
    
    for(Map.Entry<String, Integer> me : s) {
      System.out.println("Original entry: " + me.getKey() + " : " + me.getValue());
      me.setValue(me.getValue() + 200);
      System.out.println("Revised entry: " + me.getKey() + " : " + me.getValue());
    }

  }

}
Original entry: A1020 : 1000
Revised entry: A1020 : 1200
Original entry: A1021 : 4000
Revised entry: A1021 : 4200
Original entry: A1024 : 4900
Revised entry: A1024 : 5100
Original entry: A1022 : 3200
Revised entry: A1022 : 3400
Original entry: A1023 : 2500
Revised entry: A1023 : 2700

nəticə

Bu dərslikdə Map.Entry interfeysinin Java-dakı hər bir giriş dəstindəki düymələri və dəyərləri əldə etmək üçün necə istifadə ediləcəyini öyrəndik.

arayış

Translate »
1