lambda表达式对两个值操作
//函数接口
package interfaces;
@FunctionalInterface
public interface MyFunction2<T,R> {
public R getValue(T t,T t2);
}
//实际实现调用
package lamdaTest;
import org.junit.Test;
import interfaces.MyFunction2;
public class LambdaTest {
@Test
public void test() {
Long lon=op(2L,3L,(x,y)->x*y);//两个值相乘
System.out.println("两个值相乘lon========="+lon);
lon=op(2L,3L,(x,y)->x+y);//两个值相加
System.out.println("两个值相加lon========="+lon);
}
/**
* 对两个Long值操作
* @param l1
* @param l2
* @param fun2
*/
public Long op(Long l1,Long l2,MyFunction2<Long,Long> fun2) {
return fun2.getValue(l1, l2);
}
}

浙公网安备 33010602011771号