java在JDK5以后,增加了增强for循环的使用,增强for循环可以用在数组、或实现Iterable接口的集合类中,像Set、List都实现了Iterable接口,所以可以直接使用增强for循环,在List集合中使用增强for循环代码如下:
@Test public void test2(){ List list=new ArrayList(); list.add(1); list.add(2); list.add(3); for (Object o : list) { System.out.println(o); } }当需要输出Map集合中的键值对时,传统的方法主要有两种:
第一种的流程为:
@Test public void test3(){ Map map=new LinkedHashMap(); map.put("1", "aaa"); map.put("2", "bbb"); map.put("3", "ccc"); //传统方法1 Set set=map.keySet(); Iterator it=set.iterator(); while(it.hasNext()){ String key=(String) it.next(); String value=(String) map.get(key); System.out.println("key:"+key+"\tvalue:"+value); } }第二种的流程为:
代码演示为:
@Test public void test4(){ Map map=new LinkedHashMap(); map.put("1", "aaa"); map.put("2", "bbb"); map.put("3", "ccc"); //传统方式2 Set set2=map.entrySet(); Iterator it2=set2.iterator(); while(it2.hasNext()){ Map.Entry entry=(Entry) it2.next(); String key=(String) entry.getKey(); String value=(String) entry.getValue(); System.out.println(key+"="+value); } }使用增强for循环的第一种方式为:
@Test public void test5(){ Map map=new LinkedHashMap(); map.put("1", "aaa"); map.put("2", "bbb"); map.put("3", "ccc"); //增强for循环的第一种方式: for (Object obj:map.keySet()) { String key=(String) obj; String value=(String) map.get(key); System.out.println(key+"="+value); } }使用增强for循环的第二种方式为:
@Test public void test6(){ Map map=new LinkedHashMap(); map.put("1", "aaa"); map.put("2", "bbb"); map.put("3", "ccc"); //增强for循环的第二种方式: for (Object obj:map.entrySet()) { Map.Entry entry=(Entry) obj; String key=(String) entry.getKey(); String value=(String) entry.getValue(); System.out.println(key+"="+value); } }最后需要注意:增强for只适合取数据,要修改数组或集合中的数据,要用传统方式。