0

如何在 Scala 中构建动态 EnumCreator?

class EnumCreater{
  def create[T <: Enum[_]](clazz :Class[T],input:String):T = Enum.valueOf(clazz,input)
}

sclac 编译器报告:

error: inferred type arguments [T] do not conform to method valueOf's type parameter bounds [T <: java.lang.Enum[T]]

我试过 asInstanceOf 来解决这个问题,它不起作用。那我该怎么办?

4

1 回答 1

1

为了使其编译,您需要_T

def create[T <: Enum[T]](clazz: Class[T], input: String): T = 
  Enum.valueOf(clazz, input)
于 2013-03-10T15:27:42.027 回答