一、Map父接口
1.概要
方法 | 描述 |
---|---|
public interface Map<K,V> | 将键映射到值的对象。 一个映射不能包含重复的键; 每个键可以映射到最多一个值。 |
将键映射到值的对象。 Map不能包含重复的键; 每个键可以映射到最多一个值。
Map
界面提供了三个collection
视图 ,允许将映射内容视为键键、值集或键-值映射关系集。 映射的顺序定义在迭代器在映射的collection
示图上返回其元素的顺序。某些映射实现可明确保证其顺序,如TreeMap
类,另一些映射实现则不保证顺序,如HashMap
。
2.Map接口的特点:
- 用于存储任意键值对(Key-Value)
- 键:无序、无下标、不允许重复(唯一)
- 值:无序、无下标、允许重复
3.Map常见方法
方法 | 描述 |
---|---|
V put(K key, V value) | 将对象存入集合中,关联键值。key重复则覆盖原值 |
V get(Object key) | 如果此映射包含该键的映射,返回到指定键所映射的值,或 null。 |
Set keySet() | 返回此Map中所有的Key |
Collection values() | 返回包含所有值的Collection集合 |
Set<Map.Entry<K,V>> entrySet() | 键值匹配的Set集合 |
4.应用场景
在进行字典查询时,通过List接口的下标查询已经不能满足要求,因为用户不能根据元素下标轻松查询到对应位置的值,两者在直观性并不强。
public class CountryMap {
public static void main(String[] args){
System.out.println("请输入国家的缩写:");
Scanner scanner = new Scanner(System.in);
String s = Country.countries.get(scanner.nextLine());
System.out.println("查询结果为:"+s);
}
}
class Country{
public static final Map<String,String> countries = new HashMap<>();
static {
countries.put("CN","中华人民共和国");
countries.put("US","美利坚合众国"<