java - 有没有办法将 LambdaExpression 转换为字符串
问题描述
我想将 LambdaExpression 之类的转换为如下所示pos -> pos.x < 5 && pos.y < 5
的字符串:"pos.x < 5 && pos.y < 5"
这在Java中可能吗?
在 C# 中,我使用类似这样的东西
解决方案
不,这是不可能的。
Java 被编译成一组字节码指令。所有 Java 源代码的确切形式,包括 lambda 的形式,在编译时都会丢失。这是一个单向过程;某些细节被不可挽回地丢弃(空白是一个例子,但还有其他不那么琐碎的细节),因此您无法从字节码重新创建源代码。
推荐阅读
- dax - 仅使用 DAX 更新计数的所有值以在日期之间添加 2.822
- python - 使用烧瓶向自己发送电子邮件
- bash - 如何在 Windows 10 中通过 power-shell 或 hyper.js 重命名多个文件名
- javascript - 使用vue时如何使用React.hydrate?
- php - 重复作为关系
- python - 你能从 macOS 原生 Python 中创建一个 miniconda 环境吗?
- c# - 如何在 asp.core 中使用 Fluent API 创建关系或主键?
- c# - VSIX / Roslyn - 如何监视从 MyClass 派生的任何类的开放解决方案
- python - Python,为每个方法安排一个线程并行线程
- php - 如何使用 CodeIgniter 和 adLDAP v2.1 库排除 LDAP 域下的特定文件夹