最近在学习Map集合,关于Map集合,它区别于Collcetion集合在于他可以存储键值对,而且一个键只能映射到一个值,如果重复存储键值对,则会把上一个键值对覆盖掉。
关于如何遍历Map集合,提供了两个主要的方法,一个是keySet();另外一个是entrySet();
keySet()返回的是集合的键,而entrySet()返回的是键值对,下面通过代码来了解一下这两个方法的不同之处吧。
//以下内容是利用keySet()方法
public static void keysetdemo(){
Map<Integer,Integer> map=new HashMap<Integer,Integer>();
map.put(1, 5);
map.put(2, 6);
map.put(3, 7);
map.put(4, 8);
Set<Integer> set=map.keySet();
for(Iterator<Integer> it=set.iterator();it.hasNext();){
Integer key=it.next();
nteger value=map.get(key);
System.out.println(key+"..."+value);
}
}
//以下内容是利用entrySet()方法
public static void entrysetdemo(){
Map<Integer,Integer> map=new HashMap<Integer,Integer>();
map.put(1, 5);
map.put(2, 6);
map.put(3, 7);
map.put(4, 8);
System.out.println(map);
Set<Map.Entry<Integer,Integer>> set=map.entrySet();
Iterator<Map.Entry<Integer,Integer>> it=set.iterator();
while(it.hasNext()){
Map.Entry<Integer,Integer> entry=it.next();
Integer key=entry.getKey();
Integer value=entry.getValue();
System.out.println(key+"..."+value);
}
}
当然,集合还是有很多工具类的,例如Collections工具类,我们要学会去利用这些工具类。