一、简介:
函数式编程是种编程方式,它将电脑运算视为函数的计算。函数编程语言最重要的基础是λ演算(lambda calculus),而且λ演算的函数可以接受函数当作输入(参数)和输出(返回值)。其中,函数式接口是只包含一个方法的接口。
二、案例:
编写无参的函数式接口:
@FunctionalInterface public interface CustomInterface { void print(); }
2、编写业务类
public class CustomService{ @Test public void test(){ // 编写业务逻辑,并将业务逻辑作为参数传递给print方法 print(()->{ //由于CustomInterface的print()接口是无参的所以写个括号就行 System.out.println("----------"); }); } private void print(CustomInterface c){ c.print(); // 这里可以这样理解,把接收到的业务逻辑嵌套进print()方法中 } }
编写有参的函数式接口:
1、自定义一个函数式接口(有参的)
@FunctionalInterface public interface CustomInterface { void print(List<String> list); }
2、编写业务类
public class CustomService{ @Test public void test() { // 编写业务逻辑:遍历list并输出。将业务逻辑作为参数传递给print方法 // 由于CustomInterface的print()接口是有参的,所以要对应起来 print(list -> list.forEach(System.out::println)); } private void study(CustomInterface c) { List<String> list = Arrays.asList("a","b","c"); c.print(list); // 这里可以这样理解,把接收到的业务逻辑嵌套进print()方法中 } }