映射关系,也有人称为字典,Map集合里存在两组值,一组是key,一组是value。Map里的key不允许重复。通过key总能找到唯一的value与之对应。
Map里的key集存储方式和对应的Set集合中的元素存储方式一致;
学生都有一个学号,我们能点学号就能找到某个学生,好比这个学号就是key,学生就是value。
Map.Entry是Map接口的内部接口,专门用来保存key-value内容:
Map常用方法
void clear():删除该Map对象中所有的key-value对。也就是清理该集合;
boolean containsKey(Object key):查询Map中是否包含指定的key;
boolean containsValue(Object value):查询Map中是否包含至少一个value;
Set entrySet():返回Map所包含的key-value对所组成的Set集合,每个集合元素都是Map.Entry对象(Entry是Map内部类);
Object get(Object key):返回指定key所对应的value,若此Map中不包含该key,返回null;
boolean isEmpty():判断Map集合是否为空;
Set keySet():返回该Map中所有key所组成的Set集合;
Object put(Object key,Object value):添加一个key-value对,若Map中已有与key相等的key-value对,则新的key-value对覆盖原来的key-value对;
void putAll(Map m):将m中的key-value赋值到调用该方法的Map对象中;
Object remove(Object key):删除指定key所对应的key-value对,返回本删除key所关联的value,若key不存在,返回null;
int size():返回该Map里面key-value对的个数;
Collection values():返回Map里所有value组成的Collection。
- Eg:package july7;
- import java.util.Collection;
- import java.util.HashMap;
- import java.util.Map;
- import java.util.Set;
- public class Demo17 {
- public static void main(String[] args) {
-
- Map m = new HashMap();
-
- m.put(1, "jack");
- m.put(2, "rose");
- m.put(3, "lucy");
-
- System.out.println(m);//{1=jack, 2=rose, 3=lucy}
- Set s = m.entrySet();
- System.out.println(s);//[1=jack, 2=rose, 3=lucy]
-
- s = m.keySet();
- System.out.println(s);//[1, 2, 3]
- for (Object key : s) {
- System.out.println(key);//Key
- System.out.println(m.get(key));//Value
- }
-
- Collection c = m.values();
- System.out.println(c);
- }
- }
复制代码
|
|