java8 stream api (三)

高级复杂的流操作

private static List<Person> list = Arrays.asList(new Person("aa", 12), new Person("bb", 13), new Person("bb", 14),

new Person("bb", 15), new Person("bb", 16));


public static void main(String[] args) {


}


public static void flatmap() {
// flatmap 返回值是一个流stream 用于流的转化 合并
list.stream().flatMap(t -> Stream.of(t.getName())).forEach(action -> {
System.out.println(action);
});
}


public static void mapDemo() {
// map 是用来做类型转换的 传入T 返回 R 对于流中的所有的数据都会处理
list.stream().map(t -> {
if (t.getAge() > 13) {
return "少年";
}
return "青年";
}).forEach(action -> {
System.out.println(action);
});
}


public static void filter() {
// filter 过滤条件 可以是很复杂的多重过滤 返回true就是通过 返回false被过滤掉
list.stream().filter(t -> {
if (t.getAge() > 15) {
return t.getName().equals("bb");
}
return false;


}).forEach(action -> {
System.out.println(action);
});


}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值