Lambda表达式的省略

省略规则
1.参数类型可以省略,但是有多个参数的情况下,不能只省略一个
2.如果参数有且仅有一个,那么小括号可以省略
3.如果代码块的语句只有一条,可以省略大括号和分号,甚至是return

package com.shengda.test7;

public class Test7 {
    public static void main(String[] args) {
        // 省略前
        /*useInter((double a,double b)->{
            return a+b;
        });*/
        useInter((a,b)-> a+b);  // 省略后

        // 省略前
        /*useInter1((int num)->{
            return num;
        });*/ 
        useInter1(num->num);  // 省略后
        
    }

    public static void useInter(Inter i){
        double result = i.method(12.3,11.1);
        System.out.println(result);
    }

    public static void useInter1(Inter1 i){
        int num = i.method(20);
        System.out.println(num);
    }
}

interface Inter{
    // 用于计算a+b的结果并返回
    double method(double a,double b);
}

interface Inter1{
    int method(int a);
}

你可能感兴趣的:(java_Lambda,java,lambda)