HashMap 的 get 方法用于根據鍵獲取對應的值
computeIfAbsent
方法:V value = map.computeIfAbsent(key, k -> defaultValue);
這個方法會在鍵不存在時將鍵和默認值添加到 HashMap 中。如果你只是想獲取值而不修改 Map,那么這個方法可能不太適合。
getOrDefault
方法:V value = map.getOrDefault(key, defaultValue);
這個方法在鍵不存在時返回默認值,但不會修改 Map。
Optional<V> optionalValue = Optional.ofNullable(map.get(key));
V value = optionalValue.orElse(defaultValue);
Optional 類允許你更優雅地處理可能為空的值。在這個例子中,我們首先創建一個 Optional 對象,然后使用 orElse
方法提供一個默認值。
public static <K, V> V getOrDefault(Map<K, V> map, K key, V defaultValue) {
V value = map.get(key);
return value != null ? value : defaultValue;
}
這個方法接受一個 Map、一個鍵和一個默認值作為參數,并返回與鍵關聯的值,如果鍵不存在,則返回默認值。
請注意,這些替代方案都有其優缺點。在選擇替代方案時,請確保了解它們的行為以及何時適用于你的需求。