Java8 自定义函数编程
1.创建自定义函数接口MyFunctionTest
package com.lyz.java8.customer.function; /** * 自定义函数MyFunctionTest,提供handler接口, 传入的是T,返回的是R */ @FunctionalInterface public interface MyFunctionTest<T, R> { /** * 传入T,返回R * @param t1 * @param t2 * @return R */ R action(T t1, T t2); }
2.创建实体类
public class Student{ private String name; private Integer age; public Student(String name, Integer age) { super(); this.name = name; this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } @Override public String toString() { return "Student [name=" + name + ", age=" + age + "]"; } }
3.创建测试自定义函数编程类
/** * 测试自定义函数编程 */ public class FunctionDemo { /** * 利用自定义函数编程计算x + y * @param x 第一个参数值x * @param y 第二个参数值y * @param myFunctionTest 自定义的函数接口 * @return x + y */ public Long getAdd(Long x, Long y, MyFunctionTest<Long, Long> myFunctionTest) { return myFunctionTest.action(x, y); } @Test public void testGetAdd() { Long result = getAdd(1L, 2L, (x, y) -> { return x + y; }); System.out.println("计算得出的结果为:" + result); } }
感谢您的阅读,您的支持是我写博客动力。