1.我们以遍历Point类为例子,使用List泛型
2.Java5之前:
for (Iterator pointItr = pointList.iterator(); pointItr.hasNext(); ) {
((Point) pointItr.next()).translate(1, 1);
}
该方式使用的是传统的for循环
3.Java5:
List<Point> pointList = Arrays.asList(new Point(1, 2), new Point(2, 3));
for (Point p : pointList) {
p.translate(1, 1);
}
该方式使用的是foreach方法遍历,现在用这种方法较为普遍
4.Java6:
pointList.forEach(new Consumer<Point>() {
@Override
public void accept(Point point) {
point.translate(1, 1);
}
});
该方式是实现匿名接口Consumer的方法
5.Java8
pointList.forEach(point -> point.translate(1,1));
该方法就比较神奇,一句话就可以解决问题,这种方法是在Java8后实现的,称为lambda表达式
6.这就是Java各版本遍历的方法,有兴趣的小伙伴可以自己去试试,有问题的可以再谈论区讨论