函数型接口-断定型接口-消费型接口-供给型接口

一、函数型接口
import java.util.function.Function;

public class Demo01 {
public static void main(String[] args) {
Function function = new Function<String, String>() {
@Override
public String apply(String str) {
return str;
}
};
//lambda表达式
//Function<Integer, Integer> function1 = (number)->{return number * number;};
//更加简化,去掉number的括号
Function<Integer, Integer> function1 = number->{return number * number;};
System.out.println(function1.apply(4));
}
}

二、断定型接口(返回值只能是bool值)
import java.util.function.Predicate;

public class Demo02 {
public static void main(String[] args) {
Predicate objectPredicate = new Predicate<String>(){
@Override
public boolean test(String s) {
return false;
}
};
//lambda表达式
Predicate objectPredicate1 = str->{return false;};
System.out.println(objectPredicate1.test("111"));
}
}

三、消费型接口(只有输入参数,没有返回值)
import java.util.function.Consumer;

public class Demo03 {
public static void main(String[] args) {
Consumer stringConsumer = new Consumer<String> (){
@Override
public void accept(String s) {
System.out.println(s);
}
};
Consumer<String> consumer = str->{};
}
}

四、供给型接口(没有输入参数,只有返回值)
import java.util.function.Supplier;

public class Demo04 {
public static void main(String[] args) {
Supplier objectSupplier = new Supplier<Integer>(){
@Override
public Integer get() {
return 1024;
}
};
//lamdba表达式
Supplier<Integer> supplier = ()->{return 1024;};
System.out.println(objectSupplier.get());
}
}
posted @ 2021-08-05 09:55  gdstcymc  阅读(137)  评论(0)    收藏  举报