集合知识点(二)

HashMap

格式:

 Map<key,values> map = new HashMap<>();
 //对于HashMap集合需要传入两个参数叫做键、值

增加:

 map.put(key,values);
 //根据键的Hash码存储,如果key的Hash值相同,则根据书写顺序后面的values覆盖前的values

获得值:

 //获得所有的key值
 set<key的类型> keys = map.keySet();
 //获得所有的values值
 Collection<values的类型> val = map.Values();

显示:

 //获得单个values值
 map.get(key);
     //在map中根据key的值来获取values;
 //显示所有values值:方法一
 for (String key:keys){
     System.out.println(map.get(key));
 }
 //显示所有values值:方法二
 //获取map的entrySet
 Set<Map.Entry<key的类型,values的类型>> entrys = map.entrySet();
 Iterator<Map.Entry<key的类型,values的类型>> it = entrys.iterator();
 while(it.hasNext()){
     Map.Entry<key的类型,values的类型> en = it.next();
     System.out.println(en.getkey()+en.getValue);
 }

 

了解方法二需要知道Map的存储,Map的基本单元是Entry里面包含了Key与Value

多个Entry以Set的方式储存,这就是Map。

内部类

 //Boy 是 Person 下的内部类
 //创建对象
 Person.Boy boy = new Person().new Boy();

注意!

内部类也会生成Class文件,文件名为Person$Boy.class

TreeMap<key,value>

  1. 与TreeSet类似,但是TreeMap根据key的Hash值排序

  2. 如果key为对象,则要求key实现comparable接口,value则不要求

猜你喜欢

转载自www.cnblogs.com/-Archenemy-/p/12000128.html