Java - 将谓词转换为字符串

标签 java string lambda predicate

我想知道是否有任何方法可以将 Predicate 转换为 String。例如会有一个函数:

public static <T> String convertPredicate(Predicate<T> objPredicate) {
    return ?...
}

这样下面的调用将返回 (obj) -> obj.value== 1:

convertPredicate((obj) -> obj.value== 1) 

最佳答案

不,一般来说在 Java 中是不可能的。人们可能会尝试分析和反编译 lambda 类的字节码(虽然获取此类的字节码已经是非常不平凡的任务),但这样的解决方案将非常复杂和脆弱。未指定 lambda 的特定运行时表示,并且可能会在不同的 Java 版本或不同的 JDK 供应商中发生变化。

关于Java - 将谓词转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33829132/

相关文章:

python - 更快地将 int 转换为单个数字列表?

Python:为什么 partition(sep) 比 split(sep, maxsplit=1) 快

python - python 动态生成函数参数

java - 如何使用BroadcastReceiver删除传入的短信?

java - 在java中比较日期与Xpath

java - 如何为小部件制作亮度改变按钮

Java 正则表达式 : How detect a URL with file extension

c# - 将 lambda 表达式作为参数传递,然后使用参数执行该 lambda

c++ - 等效于使用 lambda 的 python 映射函数

java - 初始化泛型类型的 Java 泛型数组