四大函数式接口
作者:互联网
lambda表达式,链式编程,函数式接口,Stream流式计算
函数式接口(只有一个方法的接口)
- 简化编程模型
- 在新版本的框架底层大量应用
- foreach(消费者类型的函数式接口)
四大函数式接口
Function 有一个输入参数,有一个输出参数
/*函数式接口
* 有一个输入参数,有一个输出参数,可以用Lambda表达式简化*/
public class FunctionTest {
public static void main(String[] args) {
/* //输出输入的值
Function<String, String> function = new Function<String, String>() {
@Override
public String apply(String o) {
return o;
}
};*/
//Lambda表达式简化
Function function=(str)->{return str;};
System.out.println(function.apply("s"));
}
}
Predicate 断定型接口 只有一个输入参数,返回一个布尔值
public class PredicateTest {
/*
* 断定式接口只有一个输入参数,返回一个布尔值*/
public static void main(String[] args) {
/*Predicate<String> predicate = new Predicate<String>() {
@Override
public boolean test(String s) {
return false;
}
};*/
//lambda表达式
Predicate<String> predicate=(Str)->{return Str.isEmpty();};
System.out.println(predicate.test(""));
}
}
Consumer 消费型接口 只有输入没有返回值
public class ConsumerTest {
public static void main(String[] args) {
/*new Consumer<String>() {
@Override
public void accept(String o) {
System.out.println(o);
}
}.accept("asasas");*/
//lambda方式
Consumer<String> consumer=(str)->{
System.out.println(str);
};
consumer.accept("zzz");
}
}
Supplier 供给型接口 只有返回值没有输入
public class SupplierTest {
public static void main(String[] args) {
/* System.out.println(new Supplier<String>() {
@Override
public String get() {
return "xxx";
}
}.get());*/
//lambda方式
Supplier<String> supplier=()->{return "1024";};
System.out.println(supplier.get());
}
}
标签:return,String,System,接口,四大,out,public,函数 来源: https://www.cnblogs.com/Liuyunsan/p/15810674.html