// Function -T作为输入,返回的R作为输出
Function function = (x) -> {System.out.print(x+": ");return "Function";};
System.out.println(function.apply("hello world"));
//Predicate -T作为输入,返回的boolean值作为输出
Predicate pre = (x) ->{System.out.print(x);return false;};
System.out.println(": "+pre.test("hello World"));
//Consumer - T作为输入,执行某种动作但没有返回值
Consumer con = (x) -> {System.out.println(x);};
con.accept("hello world");
//Supplier - 没有任何输入,返回T
Supplier supp = () -> {return "Supplier";};
System.out.println(supp.get());
//BinaryOperator -两个T作为输入,返回一个T作为输出,对于“reduce”操作很有用
BinaryOperator bina = (x,y) ->{System.out.print(x+" "+y);return "BinaryOperator";};
System.out.println(" "+bina.apply("hello ","world"));
hello world: Function
hello World: false
hello world
Supplier
hello world BinaryOperator