【发布时间】:2014-05-14 08:28:43
【问题描述】:
我正在实现一个简单的 switch case,它将打开一个 Enum 值。以下是代码
ScheduleType scheduleType = ScheduleType.valueOf(scheduleTypeString);
switch (scheduleType) {
case ScheduleType.CRON_EXPRESSION:
System.out.println("Cron");
break;
}
但我的 IDE 中出现以下错误:
The qualified case label ScheduleType.CRON_EXPRESSION must be replaced with the unqualified enum constant CRON_EXPRESSION
谁能解释我为什么会收到这个错误以及代码有什么问题。 我知道正确的做法是删除 ClassName,但为什么我需要这样做? 因为通常在比较中我确实使用它,例如在 equals 和 all 中。 谢谢
【问题讨论】:
-
错误告诉你确切地你必须做什么!
-
编译器再友好不过了!
-
@SambhavSharma 他们可能是同情票,坦率地说,支持者应该在这里解释他们的理由。我并不是要成为一个混蛋,但这并不是一个好问题。编译器错误会准确告诉您如何解决此问题。我投了反对票,因为“它没有显示出任何研究成果”。
-
@SambhavSharma 我的回答涉及到原因部分。
-
我从这个问题中学到了一些东西,我不知道 Ajay 发布的信息。
标签: java spring jakarta-ee enums