java8新特性lamda表达式在集合中的使用
1、利用stream().forEach()循环处理List;
- List<String> list = Lists.newArrayList();//新建一个List 用的google提供的Guava package com.google.common.collect;
- list.add("1");
- list.add("2");
- list.add("3");
- list.stream().forEach(string ->{
- System.out.println(string);
- });
- 运行结果:
- 1
- 2
- 3
2、利用stream().map()处理List,并给另外一个List赋值:
- List<String> list1 = Lists.newArrayList();
- List<String> list2 = Lists.newArrayList();
- list1.add("1");
- list1.add("2");
- list1.add("3");
- list2 = list1.stream().map(string -> {
- return "stream().map()处理之后:" + string;
- }).collect(Collectors.toList());
- list2.stream().forEach(string -> {
- System.out.println(string);
- });
- 运行结果:
- stream().map()处理之后:1
- stream().map()处理之后:2
- stream().map()处理之后:3
3、利用stream().filter()处理List,对该List进行过滤处理:
- List<String> list1 = Lists.newArrayList();
- List<String> list2 = Lists.newArrayList();
- list1.add("1");
- list1.add("1");
- list1.add("2");
- list1.add("3");
- list2 = list1.stream().filter(s -> s != "1").collect(Collectors.toList());
- System.out.println(list2.toString());
- 运行结果:
- [2, 3]