Java中的强制转换表达式是什么?
一投的表达提供了一种机制,以明确提供 lambda表达式的类型,如果没有可以从上下文推断方便。当方法声明因不相关的功能接口类型而过载时,解决歧义也很有用。
语法
Object o = () -> { System.out.println("nhooo"); };
//非法:
Object o = (Runnable) () -> { System.out.println("nhooo"); }; // Legal示例
interface Algebra1 {
int operate(int a, int b);
}
interface Algebra2 {
int operate(int a, int b);
}
public class LambdaCastingTest {
public static void main(String[] args) {
printResult((Algebra1)(a, b) -> a + b); // Cast Expression in Lambda
printResult((Algebra2)(a, b) -> a * b); // Cast Expression in Lambda
}
static void printResult(Algebra1 a) {
System.out.println("From Algebra1 Interface: " + a.operate(40, 20));
}
static void printResult(Algebra2 a) {
System.out.println("From Algebra2 Interface: " + a.operate(40, 20));
}
}输出结果
From Algebra1 Interface: 60 From Algebra2 Interface: 800
热门推荐
10 圣诞祝福语简短小学
11 祖国七十华诞简短祝福语
12 老师送的祝福语简短
13 生日祝福语大全女生简短
14 祝女性生日祝福语简短
15 牛年女神节祝福语简短
16 情人表白祝福语简短大气
17 老公开业祝福语简短
18 官宣新年祝福语简短