共计 1111 个字符,预计需要花费 3 分钟才能阅读完成。
Function<T, R> 是 Java 8 中的一个函数式接口,用于示意承受一个输出参数 T,并返回一个后果 R 的函数。它定义了一个形象办法 R apply(T t),须要依据输出参数的类型来实现。
以下是 Function<T, R> 接口的用法示例:
import java.util.function.Function;
public class FunctionExample {public static void main(String[] args) {
// 示例 1:将字符串转换为对应的整数
Function<String, Integer> strToInt = Integer::parseInt;
int num = strToInt.apply("123");
System.out.println(num); // 输入: 123
// 示例 2:将字符串转换为其长度
Function<String, Integer> strLength = String::length;
int length = strLength.apply("Hello World");
System.out.println(length); // 输入: 11
// 示例 3:组合多个函数
Function<String, Integer> strToIntAndMultiplyBy2 = strToInt.andThen(n -> n * 2);
int result = strToIntAndMultiplyBy2.apply("5");
System.out.println(result); // 输入: 10
}
}
在示例 1 中,咱们创立了一个 Function<String, Integer> 对象 strToInt,将其定义为 Integer::parseInt 办法的援用。该 Function 实例能够将传入的字符串解析为相应的整数。通过调用 apply 办法,并将字符串 “123” 作为参数传入,咱们能够失去整数后果 123。
在示例 2 中,咱们创立了一个 Function<String, Integer> 对象 strLength,将其定义为 String::length 办法的援用。该 Function 实例能够返回传入字符串的长度。通过调用 apply 办法,并将字符串 “Hello World” 作为参数传入,咱们能够失去字符串的长度 11。
在示例 3 中,咱们将两个函数 strToInt 和 n -> n * 2 进行组合。首先将字符串转换为整数,而后将后果乘以 2。通过调用 andThen 办法,咱们能够失去一个新的 Function 对象 strToIntAndMultiplyBy2,它将传入的字符串转换为整数并乘以 2。最终,通过调用 apply 办法,并将字符串 “5” 作为参数传入,咱们能够失去后果 10。
正文完