Java常用集合有List、Set、Map。
在网上看到对于这几种集合的区别一种很生动的解释(原文戳这里):
list,map,set的区别 (首先假定小猪都是同一个细胞克隆出来的)
List = 排成一长队的小猪
Map = 放在一个个,有房间号的屋子里面的一群小猪
Set = 一群小猪贴上号,然后赶到一个猪圈里
下面我来介绍这几种集合各自的遍历方式:
List:
public void LIST(){ ArrayList<String> list = new ArrayList<String>(); list.add("aa"); list.add("bb"); list.add("cc"); //第一种:for循环遍历 for(int i=0;i<list.size();i++){ System.out.println(list.get(i)); } //第二种:增强的for循环 for(String elt:list){ System.out.println(elt); } //第三种:Iterator迭代器 Iterator<String> iter = list.iterator(); while(iter.hasNext()){ System.out.println(iter.next()); } }
Set:
public void SET(){ HashSet<String> set = new HashSet<String>(); set.add("11"); set.add("22"); set.add("33"); //第一种:增强的for循环 for(String elt:set){ System.out.println(elt); } //第二种:Iterator迭代器 Iterator<String> iter = set.iterator(); while(iter.hasNext()){ System.out.println(iter.next()); } }
Map:
public void MAP(){ HashMap<String,String> map = new HashMap<String,String>(); map.put("1","aa"); map.put("2","bb"); map.put("3","cc"); //第一种:增强的for循环(entry集合) for(Map.Entry<String,String> entry :map.entrySet()){ System.out.println("key:"+entry.getKey()+",value:"+entry.getValue()); } //第二种:增强的for循环(key集合) for(String i:map.keySet()){ System.out.println("key:"+i+",value:"+map.get(i)); } //第三种:Iterator迭代器 Iterator<Map.Entry<String,String>> iter = map.entrySet().iterator(); while(iter.hasNext()){ Map.Entry<String,String> entry = iter.next(); System.out.println("key:"+entry.getKey()+",value:"+entry.getValue()); } }