Junior
Java'dagi Map to'plami va uning xususiyatlari haqida gapiring.
sobes.tech AI
AIdan javob
Map — Java Collection Framework içində bir interfeysdir və "açar-dəyər" cütlərinin kolleksiyasını təmsil edir. Açarlar unikal, dəyərlər isə təkrarlana bilər.
Əsas xüsusiyyətlər:
- Açar, müvafiq dəyərə giriş üçün istifadə olunur.
- Eyni açar iki dəfə əlavə edilə bilməz. Mövcud açar əlavə edilməyə çalışıldıqda, köhnə dəyər yenisi ilə əvəz olunur.
Map,Collectioninterfeysindən irs almır. "Açar-dəyər" cütləri ilə işləmək üçün öz metodlarına malikdir.- "Açar-dəyər" cütlərinin sırası, konkret tətbiqə görə fərqli ola bilər.
Populyar Map tətbiqləri:
HashMap: Elementlərin sırasını təmin etmir. Hash konfliktləri olmadan əksər əməliyyatlar üçün yüksək performans təmin edir (əlavə, əldə etmə, silmə).LinkedHashMap: Elementləri əlavə olunduğu sırayla saxlayır (və ya giriş sırasına görə, uyğun şəkildə konfiqurasiya olunubsa).TreeMap: Elementləri açara görə sıralı şəkildə saxlayır (təbii sıra və ya müqayisəçi tərəfindən təmin edilən). Əksər əməliyyatlar üçün logaritmik vaxt təmin edir.
Misal metodlar:
// Dəyəri açar ilə əldə et
Object value = map.get(key);
// Açar-dəyər cütünü əlavə et və ya yenilə
Object oldValue = map.put(key, value);
// Açar ilə cütü sil
Object removedValue = map.remove(key);
// Açarın olub-olmadığını yoxla
boolean containsKey = map.containsKey(key);
// Dəyərin olub-olmadığını yoxla
boolean containsValue = map.containsValue(value);
// Bütün açarların toplusunu əldə et
Set<KeyType> keys = map.keySet();
// Bütün dəyərlərin kolleksiyasını əldə et
Collection<ValueType> values = map.values();
// Bütün girişlərin (açar-dəyər cütləri) toplusunu əldə et
Set<Map.Entry<KeyType, ValueType>> entries = map.entrySet();
// Map-in ölçüsünü əldə et
int size = map.size();
Map.Entry istifadə edərək iterasiya:
// Entry toplusu üzərində iterasiya
for (Map.Entry<KeyType, ValueType> entry : map.entrySet()) {
KeyType key = entry.getKey();
ValueType value = entry.getValue();
// ...
}