映射接口将唯一的键映射到值。键是用于以后检索值的对象。
给定一个键和一个值,您可以将值存储在一个映射对象中。值存储后,您可以使用其键来检索它。
几个方法会在调用映射中不存在项时抛出 NoSuchElementException
。
当一个对象与映射中的元素不兼容时,会抛出 ClassCastException
。
如果尝试使用空对象而映射不允许空,则会抛出 NullPointerException
。
当尝试更改不可修改的映射时,会抛出 UnsupportedOperationException
。
映射接口方法
以下是映射接口的方法:
序号 |
方法 & 描述 |
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 是一个映射并且包含相同的条目,则返回 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() 返回一个包含映射中的值的集合。此方法提供了对映射中值的集合视图。 |
实现映射的类
以下是一些实现了映射以使用映射功能的类:
扩展映射的接口
以下是一些扩展映射接口的接口:
映射接口示例
示例 1
映射在其多种类中都有实现,如 HashMap
。下面是一个解释映射功能的例子:
import java.util.HashMap;
import java.util.Map;
public class CollectionsDemo {
public static void main(String[] args) {
Map<String, String> m1 = new HashMap<>();
m1.put("Zara", "8");
m1.put("Mahnaz", "31");
m1.put("Ayan", "12");
m1.put("Daisy", "14");
System.out.println();
System.out.println(" Map Elements");
System.out.print("\t" + m1);
}
}
输出:
Map Elements
{Daisy=14, Ayan=12, Zara=8, Mahnaz=31}
示例 2
映射在多种类中都有实现,如 TreeMap
,它根据键对条目进行排序。下面是一个使用 TreeMap
解释映射功能的例子:
import java.util.Map;
import java.util.TreeMap;
public class CollectionsDemo {
public static void main(String[] args) {
Map<String, String> m1 = new TreeMap<>();
m1.put("Zara", "8");
m1.put("Mahnaz", "31");
m1.put("Ayan", "12");
m1.put("Daisy", "14");
System.out.println();
System.out.println(" Map Elements");
System.out.print("\t" + m1);
}
}
输出:
Map Elements
{Ayan=12, Daisy=14, Mahnaz=31, Zara=8}
示例 3
映射在多种类中都有实现,如 HashMap
。下面是一个使用 HashMap
解释映射函数以向映射添加和移除元素的例子:
import java.util.HashMap;
import java.util.Map;
public class CollectionsDemo {
public static void main(String[] args) {
Map<String, String> m1 = new HashMap<>();
m1.put("Zara", "8");
m1.put("Mahnaz", "31");
m1.put("Ayan", "12");
m1.put("Daisy", "14");
System.out.println();
System.out.println(" Map Elements");
System.out.print("\t" + m1);
m1.remove("Daisy");
System.out.println(" Map Elements");
System.out.print("\t" + m1);
}
}
输出:
Map Elements
{Daisy=14, Ayan=12, Zara=8, Mahnaz=31}
Map Elements
{Ayan=12, Zara=8, Mahnaz=31}