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);
		
	}

}

  

posted @ 2022-01-29 15:51  红尘沙漏  阅读(200)  评论(0编辑  收藏  举报