java8新特性lamda表达式在集合中的使用

时间:2023-12-23 11:49:56

1、利用stream().forEach()循环处理List;

  1. List<String> list = Lists.newArrayList();//新建一个List 用的google提供的Guava  package com.google.common.collect;
  2. list.add("1");
  3. list.add("2");
  4. list.add("3");
  5. list.stream().forEach(string ->{
  6. System.out.println(string);
  7. });
  8. 运行结果:
  9. 1
  10. 2
  11. 3

2、利用stream().map()处理List,并给另外一个List赋值:

  1. List<String> list1 = Lists.newArrayList();
  2. List<String> list2 = Lists.newArrayList();
  3. list1.add("1");
  4. list1.add("2");
  5. list1.add("3");
  6. list2 = list1.stream().map(string -> {
  7. return "stream().map()处理之后:" + string;
  8. }).collect(Collectors.toList());
  9. list2.stream().forEach(string -> {
  10. System.out.println(string);
  11. });
  12. 运行结果:
  13. stream().map()处理之后:1
  14. stream().map()处理之后:2
  15. stream().map()处理之后:3

3、利用stream().filter()处理List,对该List进行过滤处理:

    1. List<String> list1 = Lists.newArrayList();
    2. List<String> list2 = Lists.newArrayList();
    3. list1.add("1");
    4. list1.add("1");
    5. list1.add("2");
    6. list1.add("3");
    7. list2 = list1.stream().filter(s -> s != "1").collect(Collectors.toList());
    8. System.out.println(list2.toString());
    9. 运行结果:
    10. [2, 3]