我有一个scala枚举:
object EnumX extends Enumeration {
type EnumX = Value
val A = Value("a")
val B = Value("b")
}
现在我想在java类中使用这些枚举:
fun (String eventType) {
switch (EnumX.withName(eventType)) {
//Error, Constant value required
case EnumX.A():
System.out.println("Event successful");
break;
default:
System.out.println("Event unsuccessful");
break;
}
}
如何在java switch case中使用scala枚举而没有任何错误?
答案 0 :(得分:0)
答案很简单:你做不到。你只能在Java switch
中使用一些东西,Scala Enumeration
不会编译到其中任何一个。
不幸的是,互操作性的最佳实践只是在Scala项目中用Java编写枚举。