java的遍历

语法自带

1.普通for循环

for (int i = 0; i < list.size(); i++) {
  //operation    
}

2.增强for循环(也称foreach循环

for (Integer integer : list) {
  //operation   
}

详细分析可以看iterator篇

forEach方法

//内部匿名类
list.forEach(new Consumer<Integer>() {
     @Override
     public void accept(Integer integer) {
          System.out.println(integer);
     }
});
//函数式
list.forEach((str)->{
          System.out.println(str);
});

详细分析可以看iterator篇

迭代遍历

1.迭代器遍历(需要实现iterable接口)

Iterator<Integer> iterator = list.iterator();
while (iterator.hasNext()){
        System.out.println(iterator.next());
}

2.双向迭代器遍历(实现list接口)

ListIterator<String> iter = list.listIterator() ;// 获取ListIterator接口实例
while(iter.hasNext()) { // 由前向后迭代
System.out.print(iter.next());
}
while (iter.hasPrevious()) { // 由后向前迭代
System.out.print(iter.previous());
}

3.枚举输出(实现Enumeration接口)

Enumeration<String> enu = vector.elements() ; // 获取Enumeration实例
while (enu.hasMoreElements()) {
String str = enu.nextElement() ;
System.out.print(str );
}

流式遍历

Stream<String> stream = list.stream(); // 获取Stream接口对象
// 将每一个元素全部变为小写字母,而后查询是否存在有字母“j”,如果存在则进行个数统计
System.out.println(stream.filter((ele) ->
ele.toLowerCase().contains("j")).count());

你可能感兴趣的:(java)