java中的Lamdba表达式和Stream
JAVA 表达式 stream
2023-09-27 14:26:24 时间
基于JDK 1.8
1、循环:
// 以前的循环方式 for (String player : players) { System.out.print(player + "; "); } // 使用 lambda 表达式以及函数操作(functional operation) players.forEach((player) -> System.out.print(player + "; ")); // 在 Java 8 中使用双冒号操作符(double colon operator) players.forEach(System.out::println);
2、匿名内部类:
// 使用匿名内部类
btn.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
System.out.println("Hello World!");
}
});
// 或者使用 lambda expression
btn.setOnAction(event -> System.out.println("Hello World!"));
3、比较函数排序:
// 使用 lambda expression 排序
Comparator<String> sortByName = (String s1, String s2) -> (s1.compareTo(s2));
Arrays.sort(players, sortByName);
// 也可以采用如下形式:
Arrays.sort(players, (String s1, String s2) -> (s1.compareTo(s2)));
4、结合Stream:
//Lists是Guava中的一个工具类
List<Integer> nums = Lists.newArrayList(1,null,3,4,null,6);
nums.stream().filter(num -> num != null).count();
相关文章
- java程序后台报错java.net.SocketException: Too many open files
- java安全编码指南之:表达式规则
- Java 基于UDP的类似于QQ的循环通信
- Java 内部类、Lambda表达式
- java求字符串型逻辑表达式的bool值
- java求字符串型逻辑表达式的bool值
- java 两个整数相除保留两位小数
- 【Java】+【JSON】+对比两个json对象是否完全一样
- 《精通Spring MVC 4》——2.8 Java 8的流和lambda表达式
- 《21天学通Java(第7版)》—— 2.5 表达式和运算符
- Java数据结构之前缀(波兰表达式)、中缀、后缀表达式(逆波兰表达式)
- Java继承
- Java Lambda表达式初探
- 解决java.lang.NoClassDefFoundError错误
- java 解析四则混合运算表达式并计算结果
- java 读取txt,java读取大文件
- Java中的类型推断和lambda表达式
- java 8 lambda表达式中的异常处理
- 在java 8 stream表达式中实现if/else逻辑
- Java函数式编程和Lambda表达式
- Java中的lambda表达式如何理解——精简
- 华为OD机试 -字母计数(Java) | 机试题+算法思路+考点+代码解析 【2023】
- 华为OD机试 -简易内存池2(Java) | 机试题+算法思路+考点+代码解析 【2023】
- Java高手速成 | EL表达式语言
- java程序性能优化
- Thymeleaf常用语法:模板文件中表达式调用Java类的静态方法
- Java使用Rabbitmq惊喜队列queue和消息内容的本地持久化核心方法。(内容存储在硬盘)
- Java JDBC调用SqlServer存储过程 结果集为空
- Java多线程-lambda表达式
- Java 8-Lambda表达式