Junior — Middle
Java'da HashMap ile LinkedHashMap arasındaki davranış ve özellikler nasıl farklılık gösterir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Java'da HashMap ve LinkedHashMap aşağıdaki gibi farklılık gösterir:
-
HashMap anahtar-değer çiftlerini sırasız tutar. Öğelerin sırası ekleme veya silme işlemleriyle değişebilir.
-
LinkedHashMap HashMap'i genişletir ve ekleme sırasını korur. Bu, yineleme yaparken öğelerin eklenme sırasına göre döneceği anlamına gelir.
Özellikler:
- LinkedHashMap, sıralama için bağlı liste desteği nedeniyle biraz daha yavaş olabilir.
- LinkedHashMap, erişim sırasına göre silme işlemleriyle önbellek uygulamalarında kullanılabilir.
Örnek:
Map<String, Integer> hashMap = new HashMap<>();
hashMap.put("one", 1);
hashMap.put("two", 2);
hashMap.put("three", 3);
Map<String, Integer> linkedHashMap = new LinkedHashMap<>();
linkedHashMap.put("one", 1);
linkedHashMap.put("two", 2);
linkedHashMap.put("three", 3);
System.out.println("HashMap: " + hashMap.keySet());
System.out.println("LinkedHashMap: " + linkedHashMap.keySet());
Çıktı:
HashMap: [two, one, three]
LinkedHashMap: [one, two, three]
Bu nedenle, öğelerin sırası önemliyse, LinkedHashMap kullanmak gerekir.