自定义Lambda接口步骤:
定义一个函数式接口,接口增加注解@FunctionalInterface,防止接口增加其他方法导致故障;
接口定义方法;
调用方法传入数据和Lambda表达式,操作数据。
代码如下:
package com.example.lambdademo.customInterfaces;@FunctionalInterfacepublic interface LambdaNoReturnNoParameter {void test();}package com.example.lambdademo.customInterfaces;@FunctionalInterfacepublic interface LambdaNoReturnSingleParameter {void test(int a);}package com.example.lambdademo.customInterfaces;@FunctionalInterfacepublic interface LambdaNoReturnMultipleParameter {void test(int a,int b);}package com.example.lambdademo.customInterfaces;@FunctionalInterfacepublic interface LambdaHaveReturnNoParameter {int test();}package com.example.lambdademo.customInterfaces;@FunctionalInterfacepublic interface LambdaHaveReturnSingleParameter {int test(int a);}package com.example.lambdademo.customInterfaces;@FunctionalInterfacepublic interface LambdaHaveReturnMultipleParameter {int test(int a,int b);}package com.example.lambdademo.customInterfaces;/*** 自定义Lambda接口测试使用* @author thehe**/public class CustomInterfacesTest {public static void main(String[] args) {//无返回值无参数LambdaNoReturnNoParameter lambdaNoReturnNoParameter=()->{System.out.println("无返回值无参数");};lambdaNoReturnNoParameter.test();//无返回值单个参数LambdaNoReturnSingleParameter lambdaNoReturnSingleParameter =(int a)->{System.out.println("无返回值单个参数: "+a);};lambdaNoReturnSingleParameter.test(2);//无返回值多个参数LambdaNoReturnMultipleParameter lambdaNoReturnMultipleParameter=(int a,int b)->{System.out.println("无返回值多个参数: "+a+b);};lambdaNoReturnMultipleParameter.test(1, 2);//有返回值无参数LambdaHaveReturnNoParameter lambdaHaveReturnNoParameter=()->{System.out.println("有返回值无参数");return 6;};int test = lambdaHaveReturnNoParameter.test();System.out.println("有返回值无参数"+test);//有返回值单个参数LambdaHaveReturnSingleParameter lambdaHaveReturnSingleParameter=(int a)->{System.out.println("有返回值单个参数");return a;};int test2 = lambdaHaveReturnSingleParameter.test(7);System.out.println("有返回值单个参数"+test2);//有返回值多个参数LambdaHaveReturnMultipleParameter lambdaHaveReturnMultipleParameter=(int a,int b)->{System.out.println("有返回值多个参数");return a+b;};int test3 = lambdaHaveReturnMultipleParameter.test(8, 9);System.out.println("有返回值多个参数"+test3);//简洁写法:参数类型,大括号,return ,在此省略LambdaHaveReturnMultipleParameter lambdaHaveReturnMultipleParameter2=(x,y)->x+y;lambdaHaveReturnMultipleParameter2.test(8, 9);System.out.println("有返回值多个参数的简洁写法: "+test3);}}
最后修改时间:2020-07-01 13:37:32
文章转载自227decision,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




