使用 OpenJDK 14.0.1
public class Example {
private String test(final ExampleEnum ee) {
return switch (ee) {
case Value -> null;
};
}
}
Run Code Online (Sandbox Code Playgroud)
public enum ExampleEnum {
Value;
public enum InnerEnum {
}
}
Run Code Online (Sandbox Code Playgroud)
编译失败并显示“开关表达式未涵盖所有可能的输入值”。如果我InnerEnum从ExampleEnum代码中删除编译。为什么这个内部枚举的存在会导致 switch 表达式失败?是否有逻辑解释或编译器错误?