1):当Map存入的键已经存在时候,会覆盖旧值,Set是不会加进去
HashMap<Integer,String> hashMap=new HashMap<Integer,String>(); hash.put(1,"wo"); hash.put(1,"ni"); //此时Key为1对应的值是ni,wo已经被覆盖
2):Map
要获取迭代器时,要先转化成entry,再获取迭代
//实现排序,和treeList一样,是有序的 TreeMap<Integer,Integer> treeMap=new TreeMap<Integer,Integer>(new Comparator<Integer>() { @Override public int compare(Integer o1, Integer o2) { return o2-o1; } }); //创建Entry(入口) Set<Map.Entry<Integer, Integer>> entries = treeMap.entrySet(); //创建迭代器 Iterator<Map.Entry<Integer, Integer>> iterator = entries.iterator(); while (iterator.hasNext()){ Map.Entry<Integer, Integer> next = iterator.next(); int key=next.getKey(); int value=next.getValue(); System.out.println("KEY: "+key+" VALUE: "+value); }
3):Map的forEach遍历
for (Integer integer:treeMap.keySet()){ //获取键 Integer value=treeMap.get(integer);//获取值 System.out.println(integer + " " + value); }