Sobes.tech
Junior — Middle

Kolleksiyada entrySet() metodiga murojaat qilinsa, elementlarni tartiblash uchun qanday mezon ishlatiladi?

sobes.tech AI

AIdan javob

entrySet() usuli Map kolleksiyasidan kalit-qiymat juftliklari (Map.Entry) to'plamini qaytaradi. entrySet() o'zi elementlarning tartibini kafolatlamaydi.

Tartiblash mezoni Map ning aniq amalga oshirilishiga bog'liq:

  • HashMap da elementlarning tartibi belgilangan emas (tartiblangan emas).
  • LinkedHashMap da elementlar qo'shilish tartibida tartiblangan.
  • TreeMap da elementlar kalit bo'yicha tartiblangan, kalitlarning tabiiy tartibi yoki taqdim etilgan taqqoslovchi bo'yicha.

Shunday qilib, agar siz TreeMap ga entrySet() chaqirsangiz, elementlar kalit bo'yicha tartiblangan bo'ladi. Boshqa amalga oshirishlarda tartib tasodifiy yoki qo'shilish bo'yicha saqlanishi mumkin.

Misol:

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());
}
// Chiqish:
// a=1
// b=2