首页 > 解决方案 > 无法在具有 lambda 字段的类的构造函数中使用“return”

问题描述

代码如下所示:

import java.util.function.Consumer;

public class Test {
    Consumer<Integer> lambda = key -> {
    };

    public Test() {
        return; // NOTICE THIS LINE
    }
}

构建输出如下:

~\Test.java:7:19
java: variable key might not have been initialized

java -version

java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

os ver: Microsoft Windows [版本 10.0.18363.1734]

在此处输入图像描述

标签: javalambdajava-8

解决方案


您重新发现了JDK-8077667错误。如错误报告中所述,它已在版本 9 中修复。


推荐阅读