Sobes.tech
Junior — Middle

Коллекцияда entrySet() ыкмасын чакырганда элементтерди сорттоо үчүн кай критерий колдонулат?

sobes.tech AI

AIден жооп

entrySet() ыкмасы Map коллекциясынан ачкыч-маалымат жуптары (Map.Entry) топтомун кайтарат. Өзүнчө, entrySet() элементтердин тартибин кепилдебейт.

Тартиптөө критерийи Mapдин конкреттүү ишке ашырылышына көз каранды:

  • HashMapте, элементтердин тартиби аныкталган эмес (тартиптелбеген).
  • LinkedHashMapте, элементтер кошулуу тартибинде тартиптелген.
  • TreeMapте, элементтер ачкыч боюнча, табигый тартип же берилген салыштыргыч боюнча тартиптелген.

Ошондуктан, эгер TreeMap үстүндө entrySet() чакырсаңыз, элементтер ачкыч боюнча тартиптелет. Башка ишке ашырылыштарда, тартип кездейсоқ же кошулуу боюнча сакталат.

Мисал:

Map<String, Integer> map = new TreeMap<>();
map.put("b", 2);
map.put("a", 1);
for (Map.Entry<String, Integer> entry : map.entrySet()) {
    System.out.println(entry.getKey() + "=" + entry.getValue());
}
// Чыгуу:
// a=1
// b=2