java8

Java8新特性Lambda表示式子

lambda简介

lambda性能分析

写了一些代码理解下,确实很简洁啦,什么时候使用它,就看性能分析了

package com.lamada;

public interface MathOp<T> {
	T op(T a, T b);
}
package com.lamada;

import java.util.Arrays;
import java.util.List;

public class LamadaTest {
	
	public static <T> T calculate(T a, T b, MathOp<T> mathop){
		return mathop.op(a, b);
	}
	
	@Override
	public String toString(){
		return "I am Lamabda Test";
	}
	
	Runnable runnable = () -> { System.out.println(this); };
	
	public static void main(String[] args) {
		
		new LamadaTest().runnable.run();
		
		List<Double> doublelists = Arrays.asList(10.0, 20.0,30.0);
		doublelists.stream().map(x -> x + x*0.05).forEach(x -> System.out.println(x));
		
		MathOp<Integer> add = (Integer a, Integer b) -> a + b;
		MathOp<Double> adddouble = (Double a, Double b) -> a + b;
		MathOp<Integer> sub = (Integer a, Integer b) -> a - b;
		MathOp<Integer> multi = (Integer a, Integer b) -> a * b;
		MathOp<Integer> div = (Integer a, Integer b) -> a / b;
		System.out.println(calculate(1, 2, add));
		System.out.println(calculate(1.1, 1.2, adddouble));
		System.out.println(calculate(1, 2, sub));
		System.out.println(calculate(1, 2, multi));
		System.out.println(calculate(2, 1, div));
	}

}