第二十三单元 Map集合
本章目标
- map集合的使用
- HashMap的使用
- LinkedHashMap的使用
- 斗地主案例
一.Map集合
1.集合的介绍
现实生活中,我们常会看到这样的一种集合:IP地址与主机名,身份证号与个人,系统用户名与系统用户对象等,这种一一对应的关系,就叫做映射。Java提供了专门的集合类用来存放这种对象关系的对象,即java.util.Map接口。
一个映射不能包含重复的键;每个键最多只能映射到一个值。
我们通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它们存储数据的形式不同。图示:
2.HashMap
基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。键不可以重复,唯一。
3.LinkedHashMap
Map 接口的哈希表和链接列表实现,具有可预知的迭代顺序。键不可以重复,唯一。
4.Map常用方法介绍
-
public void clear()
从此映射中移除所有映射关系。此调用返回后,映射将为空。 -
public V get(Object key)
返回指定键所映射的值;如果对于该键来说,此映射不包含任何映射关系,则返回 null。 -
public boolean containsKey(Object key)
如果此映射包含对于指定键的映射关系,则返回 true。 -
public boolean containsValue(Object value)
如果此映射将一个或多个键映射到指定值,则返回 true。 -
public Set<Map.Entry<K,V>> entrySet()
返回此映射所包含的映射关系的 Set 视图。 -
public Set keySet()
返回此映射中所包含的键的 Set 视图。 -
public boolean isEmpty()
如果此映射不包含键-值映射关系,则返回 true。 -
public V put(K key,V value)
在此映射中关联指定值与指定键。如果该映射以前包含了一个该键的映射关系,则旧值被替换。 -
public V remove(Object key)
从此映射中移除指定键的映射关系(如果存在)。 -
public Collection values()
返回此映射所包含的值的 Collection 视图。 -
public int size()
返回此映射中的键-值映射关系数
public class Demo1 {
public static void main(String[] args) {
//创建Map
Map<String,String> map = new HashMap<String,String>();
//添加数据
map.put("wenzhang","马伊琍");
map.put("xiaoming","ab" );
map.put("fengshaofeng","丽丽");
//public int size()
System.out.println(map.size());
//get(key)
System.out.println(map.get("xiaoming"));
// System.out.println(map.get("abc"));
//判断键是否存在
System.out.println(map.containsKey("wenzhang"));
//判断值是否存在
System.out.println(map.