java 函数式接口作为方法参数传递时,直接传入 lambda 表达式或方法引用即可。调用方需定义接收该接口的形参,调用处提供符合签名要求的代码块或引用,编译器会自动将其适配为接口实例。

Function 如何用于字符串转整数
使用 Function 可以将字符串转换为整数。定义一个接受该接口的方法,在调用时传入解析逻辑的 Lambda 表达式。

import java.util.function.Function;
public class Main {
public static void main(String[] args) {
// 定义转换函数
Function<string integer> parser = s -> Integer.parseInt(s);
// 调用方法并传入 Lambda
int result = process("42", parser);
System.out.println(result); // 输出: 42
}
public static int process(String input, Function<string integer> func) {
return func.apply(input);
}
}</string></string>
Consumer 如何用于打印日志
使用 Consumer 可以执行不返回结果的副作用操作,如打印日志。定义一个接受该接口的方法,在调用时传入打印逻辑。

import java.util.function.Consumer;
public class Main {
public static void main(String[] args) {
// 定义消费函数
Consumer<string> printer = s -> System.out.println("Log: " + s);
// 调用方法并传入 Lambda
logMessage("Hello World", printer);
}
public static void logMessage(String message, Consumer<string> consumer) {
consumer.accept(message);
}
}</string></string>
当输入字符串为空时 process 方法会抛出什么异常
当输入字符串为空时,process 方法会抛出 NumberFormatException。因为 Integer.parseInt("") 无法解析空字符串,导致运行时异常。
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











