map.getOrDefault()方法
时间: 2024-02-26 20:48:19 浏览: 31
map.getOrDefault()方法是Java中Map接口提供的一个方法,用于获取Map中指定key对应的value值。如果Map中存在该key,则返回对应的value值;如果Map中不存在该key,则返回指定的默认值。该方法的语法为:map.getOrDefault(Object key, V defaultValue)。其中,key表示要获取的key值,defaultValue表示默认值。如果Map中存在key,则返回对应的value值;如果Map中不存在key,则返回defaultValue。该方法可以用于避免在获取Map中不存在的key时出现NullPointerException异常。
相关问题
Map.getOrDefault()
`Map.getOrDefault(Object key, V defaultValue)` 方法是 Java 8 中新增的方法,用于获取 Map 集合中指定 key 对应的 value 值,如果该 key 不存在,则返回指定的默认值 defaultValue。该方法的语法如下:
```java
V getOrDefault(Object key, V defaultValue)
```
其中,key 表示要获取的 key 值,defaultValue 表示 key 不存在时返回的默认值。
以下是一个使用 `Map.getOrDefault()` 方法的示例:
```java
import java.util.HashMap;
import java.util.Map;
public class Main {
public static void main(String[] args) {
Map<String, Integer> map = new HashMap<>(); map.put("apple", 1);
map.put("banana", 2);
map.put("orange", 3);
// 获取 key 为 "apple" 的 value 值
int value1 = map.getOrDefault("apple", 0);
System.out.println("value1: " + value1); // 输出:value1: 1
// 获取 key 为 "pear" 的 value 值
int value2 = map.getOrDefault("pear", 0);
System.out.println("value2: " + value2); // 输出:value2: 0
}
}
```
上述代码中,我们首先创建了一个 HashMap 对象,并向其中添加了三个键值对。然后,我们使用 `Map.getOrDefault()` 方法获取了 key 为 "apple" 和 "pear" 的 value 值,其中 "apple" 存在于 Map 中,因此返回其对应的 value 值 1;而 "pear" 不存在于 Map 中,因此返回指定的默认值 0。
map.getOrDefault()
map.getOrDefault() 方法是 Map 接口中的一个默认方法,它的作用是获取指定 key 对应的 value,如果 key 不存在,则返回一个默认值。下面是该方法的代码示例:
```java
Map<String, Integer> map = new HashMap<>();
map.put("apple", 1);
map.put("banana", 2);
int count1 = map.getOrDefault("apple", 0); // 返回 1
int count2 = map.getOrDefault("orange", 0); // 返回 0
```
在上面的代码中,我们首先创建了一个 HashMap 对象,并向其中添加了两个键值对。然后我们使用 getOrDefault() 方法获取了两个 key 对应的 value,其中第一个 key 存在于 map 中,返回了它对应的 value,而第二个 key 不存在于 map 中,返回了默认值 0。
getOrDefault() 方法的实现原理是:如果指定的 key 存在于 map 中,则返回该 key 对应的 value;否则返回指定的默认值。这个方法的返回值类型与默认值类型相同。