Java kullanarak Göster.() containsKey göster kullanırken gereksiz.()
Ben merak için biraz zaman ister. izin verilen içinde en iyi uygulama kaçınmalıdır kullanarak containsKey()
yöntem java.util.Map
ve yerine boş bir kontrol sonucu get()
.
Benim gerekçem gereksiz değeri iki kez - ilk get()
containsKey()
için ve daha sonra arama yapmak gibi görünüyor.
Diğer taraftan olabilir bu en standart uygulamaları Map
önbellek son arama veya derleyici olabilir, yoksa uzakta olan fazlalık ve bunun için okunabilirlik kodu olduğunu tercih sürdürmek containsKey()
parçası.
Çok yorumlarınızı takdir ediyorum.
CEVAP
Bazı uygulamaları Göster izin için boş değerler, örneğin HashMap, bu durumda eğer get(key)
döner null
değil garantisi yok giriş harita ile ilgili bu anahtar.
Eğer öyleyse, eğer bir harita anahtarı varsa öğrenmek istiyorsan Map.containsKey
kullanın. Sadece bir değer 10 ** anahtar kullanmak eşlenen gerekiyorsa. Map.containsKey
faydasız olacaktır ve performansını etkiler. Ayrıca, eş zamanlı erişim için bir harita (örneğin ConcurrentHashMap
), sonra test Map.containsKey(key)
şans giriş yapacak başka bir iş parçacığı tarafından kaldırıldı aramadan önce Map.get(key)
.
Java HashMap vs nesneleri Göster...
Java Göster Sipariş...
En verimli şekilde artış Java Göster b...
Göster C eşdeğer Java#...
8 Liste< Java;V> Göster<K, V&g...