foreach的原理:
首先我们给出一个简单的例子
public class Demo1 { public static void main(String[] args) { String[] i={"0","1","2","3","4","5","6"}; for(String j:i){ System.out.PRintln(j); } }}再看看他的字节码 javap -c Demo1或者javap -verbose Demo1
注意其73行,这是goto,也就是说类似与for循环实现,至少可以判断这里存在一个循环
再看看其他的例子
public static void main(String[] args) { LinkedList<String> lists=new LinkedList<>(); for(int i=0;i<5;i++){ lists.add(i+""); } for(String i:lists){ System.out.println(i); } }
明显可以看出使用了迭代器来实现foreach循环!
新闻热点
疑难解答