Java 的lambda表达式
·
在Java Lambda表达式中,第一个括号 () 表示方法的参数列表。
详细解释
java
Runnable r = () -> System.out.println("✅ Lambda 表达式 (Java 8)");
括号的含义
() - 表示Lambda表达式所实现的抽象方法没有参数
这是因为Runnable接口的run()方法定义是:void run() - 没有参数
对应关系
#java
// 传统匿名内部类写法
Runnable r = new Runnable() {
@Override
public void run() { // 这个run()方法没有参数
System.out.println("✅ Lambda 表达式 (Java 8)");
}
};
// Lambda表达式简化写法
Runnable r = () -> System.out.println("✅ Lambda 表达式 (Java 8)");
// ↑ 这个括号对应run()方法的空参数列表
不同情况的括号用法
1. 无参数
#java
() -> System.out.println("无参数")
2. 单个参数(括号可选)
#java
x -> x * x // 可以省略括号
(x) -> x * x // 也可以写括号
3. 多个参数
#java
(x, y) -> x + y // 必须用括号
4. 明确类型
#java
(int x, String y) -> x + y.length() // 有类型时必须用括号
完整示例
java
// 无参数
Runnable task1 = () -> System.out.println("执行任务");
// 一个参数
Consumer<String> printer = (msg) -> System.out.println(msg);
// 多个参数
BinaryOperator<Integer> adder = (a, b) -> a + b;
// 带类型声明
Comparator<String> comparator = (String s1, String s2) -> s1.compareTo(s2);
总结: 第一个括号 () 表示Lambda表达式所实现的方法的参数列表,在这个例子中为空,因为Runnable.run()方法没有参数。
更多推荐



所有评论(0)