加强for循环能够对 list,iteraotr,array,collection进行遍历java
for(数据类型 变量名:可遍历对象){数组
//TODO 变量名oop
}.net
example:code
package cn.niki.fordemo; import java.util.HashMap; import java.util.Map.Entry; import org.junit.Test; public class ForDemo { @Test public void loop() { // 对数组进行操做 String[] hi = { "hello", "hsmw" }; for (String text : hi) { System.err.println(text); } //对集合进行遍历 HashMap<String, String> map = new HashMap<String, String>(); map.put("name", "hsmw"); map.put("age", "23"); for(Entry<String,String> entry: map.entrySet()){ System.err.println(entry.getKey()+"::"+entry.getValue()); } }
实际过程当中对集合的操做,仍是经过的对Iterator进行的操做,orm
内部调用的是普通的for循环:对象
package cn.niki.fordemo; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import org.junit.Test; public class ForIn { @Test public void forin() { List<String> list = new ArrayList<String>(); list.add("hello"); list.add("hsmw"); for (Iterator<String> i = list.iterator(); i.hasNext();) { System.err.println(i.next()); } } }
1.不能在遍历的时候对元素进行修改blog
2.不能根据位置得到值ci
使用自定义iterator 利用加强for循环进行文件的读取 http://my.oschina.net/hsm/blog/108551get