Watch the video of the learning process: [Crazy God Says Java]
https://www.bilibili.com/video/BV1B7411L7tE?p=13
Welcome everyone to support Oh, very conscientious teacher!
1. Function interface
java code
package com.function;
import java.util.function.Function;
/**
* Created by zjl
* 2020/11/25
**/
/*** Function 函数型接口, 有一个输入参数,有一个输出
* * 只要是 函数型接口 可以 用 lambda表达式简化 */
public class Demo01 {
public static void main(String[] args) {
//方式一
Function<String,String> function = new Function<String,String>(){
@Override
public String apply(String str) {
return str;
}
};
System.out.println(function.apply("abc"));
//方式二,使用lambda表达式简化的
Function<String,String> function1 = (str)->{
return str;};
System.out.println(function1.apply("def"));
}
}
Output result:
2. Predicate assertion type interface
package com.function;
import java.util.function.Predicate;
/**
* Created by zjl
* 2020/11/25
**/
/*** 断定型接口:有一个输入参数,返回值只能是 布尔值! */
public class Demo02 {
public static void main(String[] args) {
// 方式一
// 判断字符串是否为空
Predicate<String> stringPredicate = new Predicate<String>() {
@Override
public boolean test(String str) {
return str.isEmpty();
}
};
System.out.println(stringPredicate.test("abc"));
//方式二 使用lambda表达式简化
Predicate<String> predicate = (str)->{
return str.isEmpty();};
System.out.println(predicate.test("bcd"));
}
}
Output result: