* A:Map接口概述
* 查看API可以知道:
* 将键映射到值的对象
* 一个映射不能包含重复的键
* 每个键最多只能映射到一个值
* B:Map接口和Collection接口的不同
* Map是双列的,Collection是单列的
* Map的键唯一,Collection的子体系Set是唯一的
* Map集合的数据结构值针对键有效,跟值无关;Collection集合的数据结构是针对元素有效
* a:添加功能
* V put(K key,V value):添加元素。
* 如果键是第一次存储,就直接存储元素,返回null
* 如果键不是第一次存在,就用值把以前的值替换掉,返回以前的值
import java.util.HashMap;
import java.util.Map;
public class Demo1_Map {
public static void main(String[] args) {
Map<String, Integer> map=new HashMap<>();
Integer i1=map.put("张三", 23);
Integer i2=map.put("李四", 24);
Integer i3=map.put("王五", 25);
Integer i4=map.put("赵六", 26);
Integer i5=map.put("张三", 26);//把被覆盖的元素返回
System.out.println(map);
System.out.println(i1);
System.out.println(i2);
System.out.println(i3);
System.out.println(i4);
System.out.println(i5);
}
}
运行结果:
{李四=24, 张三=26, 王五=25, 赵六=26}
null
null
null
null
23
* b:删除功能
* void clear():移除所有的键值对元素
* V remove(Object key):根据键删除键值对元素,并把值返回
import java.util.HashMap;
import java.util.Map;
public class Demo1_Map {
public static void main(String[] args) {
Map<String, Integer> map=new HashMap<>();
map.put("张三", 23);
map.put("李四", 24);
map.put("王五", 25);
map.put("赵六", 26);
Integer i1Value=map.remove("张三");
System.out.println(i1Value);
System.out.println(map);
}
运行结果:
23
{李四=24, 王五=25, 赵六=26}
* c:判断功能
* boolean containsKey(Object key):判断集合是否包含指定的键
* boolean containsValue(Object value):判断集合是否包含指定的值
* boolean isEmpty():判断集合是否为空
import java.util.HashMap;
import java.util.Map;
public class Demo1_Map {
public static void main(String[] args) {
// demo1();
Map<String, Integer> map=new HashMap<>();
map.put("张三", 23);
map.put("李四", 24);
map.put("王五", 25);
map.put("赵六", 26);
System.out.println(map.containsKey("张三"));
System.out.println(map.containsValue(100));
}
}
运行结果:
true
false
* d:获取功能
* Set<Map.Entry<K,V>> entrySet():
* V get(Object key):根据键获取值
* Set<K> keySet():获取集合中所有键的集合
* Collection<V> values():获取集合中所有值的集合
* e:长度功能
* int size():返回集合中的键值对的个数
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
public class Demo1_Map {
public static void main(String[] args) {
Map<String, Integer> map=new HashMap<>();
map.put("张三", 23);
map.put("李四", 24);
map.put("王五", 25);
map.put("赵六", 26);
Collection<Integer> c= map.values();
System.out.println(c);
System.out.println(map.size());
}
}