list=new..._stream.foreach">
当前位置:   article > 正文

java8 新特性 list 集合stream foreach的遍历_stream.foreach

stream.foreach

一  遍历list元素

1.1 场景1

1.map 映射,将流中的每一个元素 T 映射为 R(类似类型转换)

  1. public class ListToMap {
  2. public static void main(String[] args) {
  3. Student stu=new Student();
  4. stu.setName("ljf");
  5. stu.setAge(23);
  6. List<Student> list=new ArrayList<>();
  7. list.add(stu);
  8. list.stream().map((e)->{ return e.getName();}).forEach((x)->{System.out.println("x:"+x);});
  9. }
  10. }

执行结果:

1.2 场景2 list<Bean> to list<String>

  1. public class ListToMap {
  2. public static void main(String[] args) {
  3. Student stu=new Student();
  4. stu.setName("ljf");
  5. stu.setAge(23);
  6. List<Student> list=new ArrayList<>();
  7. list.add(stu);
  8. //list.stream().map((e)->{ return e.getName();}).forEach((x)->{System.out.println("x:"+x);});
  9. // list.stream().map((e)->{ return "nihao:";}).collect(Collectors.toList());
  10. List<String> strList= list.stream().map(e -> "nihao:"+e.getName()).collect(Collectors.toList());
  11. System.out.println("str:"+strList.toString());
  12. }
  13. public static List<String> show(List<Student> list){
  14. return list.stream().map(e -> String.format("haoren")).collect(Collectors.toList());
  15. }
  16. }

执行结果

1.3  遍历list元素

  1. //程序逻辑,将List<Map> list 中的数据遍历存储到List<Map> demoList中。
  2. Map<String,String> mapStr=new HashMap<String,String>();
  3. mapStr.put("beijing","001");
  4. mapStr.put("tianjing","002");
  5. List<Map> list=new ArrayList<Map>();
  6. list.add(mapStr);
  7. //demoList的定义
  8. List<Map> demoList=new ArrayList<Map>();
  9. list.stream().forEach(x->{
  10. System.out.println("x:"+x);
  11. System.out.println("name:"+x.get("tianjing"));
  12. //遍历旧list集合中的map元素存储到新map中
  13. Map<String,String> mapStr2=new HashMap<String,String>() {
  14. {
  15. put(x.get("tianjing")+"","天津");
  16. }
  17. };
  18. //将新map存储到新list集合中
  19. demoList.add(mapStr2);
  20. });
  21. //在新集合中进行遍历
  22. System.out.println("demoList:"+demoList);
  23. }

程序执行结果:

1.4  从集合中过滤元素

1.代码

  1. List<String> oldList = new ArrayList<>();
  2. oldList.add("beijing");
  3. oldList.add("shanghai");
  4. String s="beijing";
  5. String dList=(String)Arrays.stream(oldList.toArray()).filter(x-> x.equals(s)).findFirst().orElse("");
  6. System.out.println("d:"+dList.toString());

2.执行结果

 

 

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

闽ICP备14008679号