标签:map
Map集合
* 1.Map集合中存储的是一对儿元素。键和值。之间存在着对应关系。
* 2.必须要保证键的唯一性。
* 3.如果存储键相同,值会覆盖。
集合框架-Map-常见方法
put(K key, V value)
将指定的值与此映射中的指定键关联(可选操作)。
返回:
返回与 key 相关联的先前值,如果 key 没有映射关系,则返回 null(返回 null 可能还表示映射以前将 null 与指定键关联)
返回:
指定键所映射的值;如果此映射不包含该键的映射关系,则返回 null
@Test
public void test1(){
/*
* 需求:将学号和对应的学生姓名进行存储。
*/
Map<Integer,String> map = new HashMap<Integer,String>();
//存储键值对。
System.out.println(map.put(2,"小花"));//之前与 key 关联的值,如果没有针对 key 的映射关系,则返回 null
System.out.println(map.put(2,"麻子"));//小花,麻子之前是小花
map.put(6,"赵六");
map.put(1,"王五");
System.out.println(map);//并没有排序,并且不是有序。2=麻子,“小花”被覆盖
System.out.println(map.get(1));//王五
}
测试结果:
null
小花
{1=王五, 2=麻子, 6=赵六}
王五 集合框架-Map-keySet方法
Set底层用的是Map集合的Key
// * 获取Map中的所有键值对。
// * Map取出所有元素的原理:将map先转成set,再使用迭代器。
// *
@Test
public void test2(){
Map<String,String> map = new HashMap<String,String>();
map.put("zhangsan","北京");
map.put("lisi","上海");
map.put("wangwu","成都");
map.put("zhaoliu","广州");
System.out.println(map);
//第一种方式:
//获取map集合中的键的集合。keySet();
Set<String> keySet = map.keySet();
//通过set集合获取迭代器。
Iterator<String> it = keySet.iterator();
while(it.hasNext()){
String key = it.next();
String value = map.get(key);
System.out.println(key+":"+value);
}
}集合框架-Map-entrySet方法&values方法
@Test
public void test3(){
Map<String,String> map = new HashMap<String,String>();
map.put("zhangsan","北京");
map.put("lisi","上海");
map.put("wangwu","成都");
map.put("zhaoliu","广州");
System.out.println(map);
//第二种方式:
//获取map集合中所有的键值关系集合。entrySet,键值关系的类型是 Map.Entry.
Set<Map.Entry<String, String>> entrySet = map.entrySet();
//迭代器取出所有的关系对象。
Iterator<Map.Entry<String, String>> it = entrySet.iterator();
while(it.hasNext()){
Map.Entry<String, String> me = it.next();
String key = me.getKey();
String value = me.getValue();
System.out.println(key+"::"+value);
}
} @Test
public void test4(){
Map<String,String> map = new HashMap<String,String>();
map.put("zhangsan","北京");
map.put("lisi","上海");
map.put("wangwu","成都");
map.put("zhaoliu","广州");
System.out.println(map);
//第三种方式:获取值的集合。values();
Collection<String> values = map.values();
Iterator<String> it = values.iterator();
while(it.hasNext()){
String value = it.next();
System.out.println(value);
}
}标签:map
原文地址:http://8477424.blog.51cto.com/8467424/1783229