集合--Map
2019-04-04 14:23
98 查看
HashMap:
1.存储键值对(key,value),
2.允许null值和null键
3.key值不可以重复
Map可以看做3部分:1.key是一个集合2.value是一个集合3.key和value是一个集合.
一些代码:
/**
*
- @author dch
*/
//HashMap
public class TestHashMap {
public static void main(String[] args) { Map map = new HashMap(); //存储数据 map.put("1001", "张三"); map.put("美国", "US"); map.put("中国", "CN"); map.put("1003", "李四"); //map.put("1003", "王五");//key如果相同,覆盖了原始数据 map.put("1004", "李四");//value可以相同 //获取map中的元素,获取value map.get("1003"); System.out.println(map.get("1003")); System.out.println(map.get("1004")); //获取 key ,value的集合 Set entrySet = map.entrySet();//将key,和value封装到entrySet里面 for (Object obj : entrySet) { } //遍历获取所有的key Set sets = map.keySet(); //foreach 遍历key可以得到key,也可以得到value for (Object s : sets) { System.out.println("遍历 key: "+s); } //遍历获取所有的value Collection values = map.values(); for (Object v : values) { System.out.println("遍历所有的value: "+v); } } }
TreeMap 一个可以排序的Map ,默认将key升序存储
public class TestTreeMap {
public static void main(String[] args) { // TODO Auto-generated method stub //创建 TreeMap 一个可以排序的Map ,默认将key升序存储 Map map = new TreeMap(); map.put("zhangsan", 98); map.put("lisi", 95); map.put("wangwu", 92); map.put("zhaoliu", 93); //遍历 map Set keys = map.keySet(); for(Object obj : keys){ System.out.println(obj+"---"+map.get(obj)); } //将 map降序 Map map2 = new TreeMap(new Comparator<String>() { //自定义排序规则 @Override public int compare(String o1, String o2) { if(o1.compareTo(o2)>0){ return -1; }else if(o1.compareTo(o2)<0){ return 1; } return 0; } }); map2.put("zhangsan", 98); map2.put("lisi", 95); map2.put("wangwu", 92); map2.put("zhaoliu", 93); System.out.println("输map2"); // 输出map2 Set entry = map2.entrySet(); for(Object obj : entry){ if(obj instanceof Map.Entry){ Map.Entry en = (Map.Entry)obj; System.out.println(en.getKey()+"----"+en.getValue()); } } // 存储对象 key: 对象 id—— 学生对象 Map map3 = new TreeMap(); map3.put(1001, new Student(1001,"张三",22)); map3.put(1003, new Student(1003,"李四",22)); map3.put(1002, new Student(1002,"王五",22)); map3.put(1005, new Student(1005,"找流",22)); //获取value 将排行的value是 放入 一个有序的集合中Collectioin Collection stus = map3.values(); for(Object obj : stus){ System.out.println(obj); } }
}
相关文章推荐
- DWR3.0 dwr 返回值(数组,集合,Map)
- js操作map集合按key排序
- Map集合的遍历方法
- Activity 间传值 map 排序 intent传递map集合
- 【集合类】关于List与Map集合的第二题(有一个存放学生类的集合list,打印出每个班级的总分和平均分如题:)...
- 对map集合进行排序
- 理解Swift中map 和 flatMap对集合的作用
- 简述list,set,map集合
- list添加集合被覆盖,利用map求和——代码应该怎么放
- java基础—Map集合的常见方法操作(java集合八)
- Map集合中value()方法与keySet()、entrySet()区别
- Map集合
- List、Set、Map集合大杂烩
- Java基础<十二>--->集合之map
- java集合3——Map集合的基础知识
- Java中key可以重复的Map集合:IdentityHashMap(转)
- EL表达式详情,遍历对象,集合和map例子
- Hibernate常见的集合映射主要有Set,List,Array,Map,Bag等
- 集合之Map总结
- spring的 集合装配,properties,list,map