Java8-Stream-No.01
来源:互联网 发布:新闻采集软件 编辑:程序博客网 时间:2024/05/20 06:22
import java.util.ArrayList;import java.util.List;import java.util.Optional;public class Streams1 { public static void main(String[] args) { List<String> stringCollection = new ArrayList<>(); stringCollection.add("ddd2"); stringCollection.add("aaa2"); stringCollection.add("bbb1"); stringCollection.add("aaa1"); stringCollection.add("bbb3"); stringCollection.add("ccc"); stringCollection.add("bbb2"); stringCollection.add("ddd1"); // filtering stringCollection.stream().filter((s) -> s.startsWith("a")).forEach(System.out::println); // "aaa2", "aaa1" // sorting stringCollection .stream() .sorted() .filter((s) -> s.startsWith("a")) .forEach(System.out::println); // "aaa1", "aaa2" // mapping stringCollection .stream() .map(String::toUpperCase) .sorted((a, b) -> b.compareTo(a)) .forEach(System.out::println); // "DDD2", "DDD1", "CCC", "BBB3", "BBB2", "AAA2", "AAA1" // matching boolean anyStartsWithA = stringCollection .stream() .anyMatch((s) -> s.startsWith("a")); System.out.println(anyStartsWithA); // true boolean allStartsWithA = stringCollection .stream() .allMatch((s) -> s.startsWith("a")); System.out.println(allStartsWithA); // false boolean noneStartsWithZ = stringCollection .stream() .noneMatch((s) -> s.startsWith("z")); System.out.println(noneStartsWithZ); // true // counting long startsWithB = stringCollection .stream() .filter((s) -> s.startsWith("b")) .count(); System.out.println(startsWithB); // 3 // reducing Optional<String> reduced = stringCollection .stream() .sorted() .reduce((s1, s2) -> s1 + "#" + s2); reduced.ifPresent(System.out::println); // "aaa1#aaa2#bbb1#bbb2#bbb3#ccc#ddd1#ddd2" }}
阅读全文
1 0
- Java8-Stream-No.01
- Java8-Stream-No.02
- Java8-Stream-No.03
- Java8-Stream-No.04
- Java8-Stream-No.05
- Java8-Stream-No.06
- Java8-Stream-No.07
- Java8-Stream-No.08
- Java8-Stream-No.09
- Java8-Stream-No.10
- Java8-Stream-No.11
- Java8-Stream-No.12
- Java8-Stream-No.13
- Java8 Stream
- java8 stream
- Java8 Stream
- Java8 Stream
- Java8:Stream
- (二)模型评估与选择
- 友盟第三方分享和登录
- springmvc--前台表单数据传到后台
- 技术分享连载(八十四)
- 自定义圆角dialog
- Java8-Stream-No.01
- Backbone入门指南(六):View (视图)
- 封装一个万能的PopupWindow
- linux下使用命令模式去编译Qt程序
- K8s + Istio 安装和配置例子: Bookinfo
- 解决vue-cli不能初始化webpack模板的问题
- Android四大组件之BroadcastReceiver
- Java在金额方面的使用
- TCP协议中的三次握手和四次挥手(图解)