Map
接口将唯一键映射到值。键是用于在以后检索值的对象。
- 给定键和值,可以将值存储在
Map
对象中。存储该值后,可以使用键检索它。 - 当调用映射中不存在任何项时,有几种方法会抛出
NoSuchElementException
。 - 当对象与映射中的元素不兼容时,抛出
ClassCastException
。 - 如果尝试使用
null
对象并且映射中不允许null
,则抛出NullPointerException
。 - 尝试更改不可修改的映射时,将引发
UnsupportedOperationException
。
以下是Java Map接口的方法和描述 -
编号 | 方法 | 描述 |
---|---|---|
1 | void clear() |
从调用映射中删除所有键/值对。 |
2 | boolean containsKey(Object k) |
如果调用映射包含k 键,则返回true 。否则返回false 。 |
3 | boolean containsValue(Object v) |
如果映射包含v 值,则返回true 。否则返回false 。 |
4 | Set entrySet() |
返回包含映射中条目的Set 。该集包含Map.Entry 类型的对象。此方法提供调用映射的集合视图。 |
5 | boolean equals(Object obj) |
如果obj 是Map 并包含相同的项,则返回true 。否则返回false 。 |
6 | Object get(Object k) |
返回与键k 关联的值。 |
7 | int hashCode() |
返回调用映射的哈希码。 |
8 | boolean isEmpty() |
如果调用映射为空,则返回true 。否则返回false 。 |
9 | Set keySet() |
返回包含调用映射中的键的Set 。此方法提供调用映射中键的集合视图。 |
10 | Object put(Object k, Object v) |
在调用映射中放入一个项,覆盖与该键关联的任何先前值。键和值分别为k 和v 。如果键尚不存在,则返回null 。否则,返回链接到该键的先前值。 |
11 | void putAll(Map m) |
将m 中的所有项放入此映射中。 |
12 | Object remove(Object k) |
删除键等于k 的项。 |
13 | int size() |
返回映射中键/值对的数量。 |
14 | Collection values() |
返回包含映射中值的集合。此方法提供映射中值的集合视图。 |
示例
Map
在HashMap
等各种类中实现。以下是演示Map功能的示例 -
import java.util.*;
public class CollectionsDemo {
public static void main(String[] args) {
Map m1 = new HashMap();
m1.put("Maxsu", "8");
m1.put("Yiibai", "31");
m1.put("Kaops", "12");
m1.put("Yesall", "14");
System.out.println();
System.out.println(" Map Elements");
System.out.print("\t" + m1);
}
}
执行上面示例代码,得到以下结果 -
Map Elements
{Yesall = 14, Kaops = 12, Maxsu = 8, Yiibai = 31}