问题:一个arrayList 存储:(1,1, 2, 3, null, 4, null, 6, 7, 8)这样一组数据,要求去掉null值,去掉重复,从第三个加和,取四位,输出结果???
代码解析:
package 流;
import java.util.Arrays;
import java.util.List;
public class StreamImpl {
public static void main (String[] args) {
//一个
List<Integer> list = Arrays.asList(1,1, 2, 3, null, 4, null, 6, 7, 8);
System.out.println("求和:"+
//转化为Stream流;
list.stream()
//过滤掉null值
.filter(s->s!=null)
//去重
.distinct()
//获取的值*2
.mapToInt(s->s*2)
// 从第三个开始算
.skip(2)
//取四个
.limit(4)
//输出
.peek(System.out::println)
//求和
.sum()
);
}
}
相信小伙伴都看懂了吧,对于Java8新特性还是很好用的,较于传统的7,节省很大代码量;持续更新