1 Map接口
1.1 概述
1.2 【比较】Collection、Map
1.3 增加值
1.4 删除值
1.5 获取值
1.6 遍历
1.6.1 遍历方法一(Set keySet())
1.6.1.1 【图示】
1.6.1.2 【代码】
//方法一
public static void test1(Map<String, String> map) {
//第一步:先得到装着key的set
Set<String> set = map.keySet();
//第二步:遍历set,得到key,再根据key获取value
Iterator<String> iterator = set.iterator();
while (iterator.hasNext()) {
String key = iterator.next();
System.out.println("key:"+key+" value:"+map.get(key));
}
}
1.6.2 遍历方法二(Set<Map.Entry<K, V> > entrySet())
1.6.2.1 【图示】
备注:映射
1.6.2.2 【代码】
//方法二
public static void test2(Map<String, String> map) {
//第一步:先得到装着Entry实体的set
Set<Map.Entry<String,String>> set = map.entrySet();
//第二步:遍历set,得到entry实体,再调用entry实体对象的方法获取key和value
Iterator<Map.Entry<String,String>> iterator = set.iterator();
while (iterator.hasNext()) {
Map.Entry<String, String> entry = iterator.next();
//通过setValue可以将map的原始值改变,但是一般在使用entrySet的时候,是进行遍历.不进行值的改变.
//entry.setValue("bingbing");
System.out.println("key1:"+entry.getKey()+" value1:"+entry.getValue());
}
}
1.7 常用的判断
2 HashMap
2.1 概述
重点:去重
2.2 【样例】
3 TreeMap
3.1 概述
3.2 注意点
(1)什么类型的数据类型可以作为key?
a:实现了Comparable接口的compareTo()方法
b:实现了Comparator接口的compare()方法
可以的代表:String、包装类、自定义的实现了要求的类
不可以的代表:数组、ArrayList、LinkedList(如果给他们建立的比较器也可以比较,但是不建议使用)
(2)元素可不可以作为key,跟元素内部的成员有没有关系
3.3 【样例】