当前位置:   article > 正文

Java集合遍历的四种方式

java集合遍历

一、迭代器 

  1. Collection<String> lists = new ArrayList<>();
  2. lists.add("赵敏");
  3. lists.add("小昭");
  4. lists.add("素素");
  5. lists.add("灭绝");
  6. // 1、得到当前集合的迭代器对象。
  7. Iterator<String> it = lists.iterator();
  8. // 2、定义while循环
  9. while (it.hasNext()){ //询问当前位置是否有元素存在,存在返回true ,不存在返回false
  10. //获取当前位置的元素,并同时将迭代器对象移向下一个位置,注意防止取出越界
  11. //越界会提示:NoSuchElementException异常
  12. String ele = it.next();
  13. System.out.println(ele);
  14. }

二、增强for

【注意事项】:增强for适用于读取数据,不能对原集合元素进行修改或者删除操作

  1. List<Double> scoresList = new ArrayList<>(Arrays.asList(new Double[]{100.0, 99.5 , 59.5}));
  2. for (double score : scoresList) {
  3. System.out.println(score);
  4. if(score == 59.5){
  5. score = 100.0; // 修改无意义,不会影响数组的元素值。
  6. }
  7. }
  8. System.out.println(scoresList); //[100.0, 99.5, 59.5]

三、Lambda表达式(foreah)

lambda表达式规则:

        

  1. Collection<String> lists = new ArrayList<>();
  2. lists.add("赵敏");
  3. lists.add("小昭");
  4. lists.add("殷素素");
  5. lists.add("周芷若");
  6. // [赵敏, 小昭, 殷素素, 周芷若]
  7. lists.forEach(new Consumer<String>() {
  8. @Override
  9. public void accept(String s) {
  10. System.out.println(s);
  11. }
  12. });
  13. System.out.println("===========================================");
  14. lists.forEach(s -> {
  15. System.out.println(s);
  16. });
  17. System.out.println("===========================================");
  18. lists.forEach(s -> System.out.println(s) );
  19. System.out.println("===========================================");
  20. lists.forEach(System.out::println );

四、Stream

  1. //1.定义list集合
  2. List<Integer> lists = new ArrayList<>(Arrays.asList(5,15,20,25));
  3. //2.输出大于15的数值
  4. //stream()配合filter()forEach 实现对元素的过滤和输出
  5. lists.stream().filter(e-> e> 15).forEach(e -> System.out.println(e));

这里的的Streaml和I/O的Stram存在着本质上的区别,请勿混淆!!!!!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/489036
推荐阅读
相关标签
  

闽ICP备14008679号