Java - 将谓词转换为字符串
Java - Convert predicate to string
我想知道是否有任何方法可以将 Predicate
转换为 String
。例如会有一个函数:
public static <T> String convertPredicate(Predicate<T> objPredicate) {
return ?...
}
这样下面的调用就会return (obj) -> obj.value== 1
:
convertPredicate((obj) -> obj.value== 1)
不,一般来说 Java 是不可能的。可以尝试分析和反编译 lambda class 的字节码(虽然获取此 class 的字节码已经是一项非常重要的任务),但这样的解决方案将非常复杂和脆弱。未指定 lambda 的特定运行时表示,并且可能会在不同的 Java 版本或不同的 JDK 供应商中发生变化。
我想知道是否有任何方法可以将 Predicate
转换为 String
。例如会有一个函数:
public static <T> String convertPredicate(Predicate<T> objPredicate) {
return ?...
}
这样下面的调用就会return (obj) -> obj.value== 1
:
convertPredicate((obj) -> obj.value== 1)
不,一般来说 Java 是不可能的。可以尝试分析和反编译 lambda class 的字节码(虽然获取此 class 的字节码已经是一项非常重要的任务),但这样的解决方案将非常复杂和脆弱。未指定 lambda 的特定运行时表示,并且可能会在不同的 Java 版本或不同的 JDK 供应商中发生变化。