增强for遍历
-
增强for的底层就是迭代器,为了简化迭代器的代码书写的。
-
他是jdk5之后出现的,其内部原理就是一个Iterator迭代器。
-
所有的单列集合和数组才能用增强for进行遍历。
package myCollection;import java.util.ArrayList;
import java.util.Collection;public class a04collectionDemo04 {public static void main(String[] args) {Collection<String> coll=new ArrayList<>();coll.add("karry");coll.add("roy");coll.add("jackson");for (String s:coll) {System.out.println(s); }}
}
细节:
-
修改增强for中的变量,不会改变集合中原本的数据。
Lambda表达式遍历
package myCollection;import java.util.ArrayList; import java.util.Collection; import java.util.function.Consumer;public class a05collectionDemo05 {public static void main(String[] args) {Collection<String> coll=new ArrayList<>();coll.add("karry");coll.add("roy");coll.add("jackson");//foreach底层原理//其实也会自己遍历集合,依次得到每个元素//把得到的元素,传递给accept方法//s依次表示集合中的每一个元素/* coll.forEach(new Consumer<String>() {@Overridepublic void accept(String s) {System.out.println(s);}});*/coll.forEach( s ->{System.out.println(s);});} }