java - 我可以给 lambda 起个名字吗?

标签 java lambda java-8

我有大致具有下一个形状的漂亮功能代码(ComponentRegistry.java):

public void doExport() {
    config.exports().forEach((key, type) -> {
        ...
    }
}

问题在于,当涉及到 log4j 语句时,它会产生下一个输出:

ComponentRegistry lambda$doExport$1

实际方法名称位于“lambda”关键字之后,然后有两个关于匿名类的提示 ($)。它根本不如直接方法调用日志记录好。

我想知道是否有人想出了在 log4j 输出或堆栈跟踪中正确标记 lambda 的方法,因为它会很棒。

最佳答案

如果您想给它命名,请不要使用 lambda(它显然是一个匿名 函数)。而是将其分解为自己的类。

关于java - 我可以给 lambda 起个名字吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43519935/

相关文章:

java - 转换 Java Stream 并返回减少的值

java - 使用内置 HTTP 服务器运行 Jersey

java - 提取结果集时是否应该使用新的流 lambda?

python - 如何使用 AWS Lambda 通过创建临时文件将 'file' 上传到 S3?

java - 如何使用 Lambda 表达式获取单词的平均长度

java - 使用 Lambda 时 Maven 插件构建失败

java - 如何在滚动下方 View 时使 EditText 粘在屏幕顶部?

Java:RMI 目标对象的垃圾回收?

java - jusched.exe 如何检查 java 更新?

lambda - 我可以在 kotlin 中转换模板表达式或 lambda 表达式中的字符串吗?