java map的put方法
时间: 2024-01-05 12:45:59 浏览: 148
Java中的Map.put()方法用于将指定的键和值映射关系添加到Map中。
语法:
```
V put(K key, V value)
```
参数:
- key:要添加的键。
- value:要添加的值。
返回值:添加键值对之前的旧值,如果没有旧值,则返回null。
示例:
```
Map<String, Integer> map = new HashMap<>();
map.put("apple", 1);
map.put("banana", 2);
map.put("orange", 3);
```
在该示例中,我们创建了一个Map对象,并使用put()方法将三个键值对添加到Map中。键是水果的名称,值是对应的数量。如果Map中已经存在某个键,则put()方法会覆盖旧值,并返回旧值。
相关问题
java map put
Java中的Map是一种用于存储键值对的数据结构,put方法可以向Map中添加键值对。其中,键和值都可以是任何Java对象。下面是一个示例:
```java
// 创建一个HashMap对象
Map<String, Integer> map = new HashMap<>();
// 添加键值对
map.put("apple", 1);
map.put("banana", 2);
map.put("orange", 3);
// 打印Map中所有的键值对
for (Map.Entry<String, Integer> entry : map.entrySet()) {
System.out.println(entry.getKey() + ": " + entry.getValue());
}
```
运行以上代码,输出结果如下:
```
apple: 1
banana: 2
orange: 3
```
在这个例子中,我们创建了一个HashMap对象,并使用put方法向其中添加了三个键值对。最后,使用entrySet方法获取Map中的所有键值对,并遍历输出。
java map put 相同的key
在Java中,Map是一种键值对集合,`put()`方法用于向Map中添加新的元素或者更新已存在的元素。如果你尝试将相同的key放入Map,有以下几种情况:
1. 如果键(Key)已经存在,那么原来的值会被覆盖(如果提供的新值不是null)。这就是所谓的"替换操作"(Replace Operation),默认的行为对于HashMap、TreeMap等实现是这样的。
```java
Map<String, String> map = new HashMap<>();
map.put("example", "oldValue"); // 插入初始键值对
map.put("example", "newValue"); // 第二次插入,旧的"value"会被"newValue"替换
```
现在,`map.get("example")`会返回"newValue"。
2. 对于不允许重复键的结构(如ConcurrentSkipListMap),第二次的`put()`操作会抛出`java.util.Map.Entry.SettingEntryException`异常。
3. 如果你想在已有的键关联多个值(通常用于保存列表),可以使用`put(key, list.add(value))`的方式,这里`list`是`Collection`类型的值(例如List)。这会创建一个新的`Entry`,其中的值是一个包含原始值的新List。
```java
Map<String, List<String>> multimap = new ConcurrentHashMap<>();
multimap.put("example", Collections.singletonList("oldValue"));
multimap.put("example", "newValue"); // 新增一个值到已有键的列表中
```
阅读全文
相关推荐
















