3
我在Scala中编写了一些代码,它依赖于我无法在参数上看到的类型参数。是否可以匹配Scala中的清单类型?
def read[T](json: String)(implicit m: Manifest[T]): T = {
if (m <:< manifest[Map[String, Any]]) {
JsonParser.jsonToMap(json).asInstanceOf[T]
} else {
throw new UnsupportedOperationException("Not implemented for type %s".format(m))
}
}
除了事实,我写我自己的JSON的框架,这可能是一个非常糟糕的主意......
我可以用它代替的if语句case语句,或者我应该在不同的方向思考?
很好的答案,谢谢! – iwein 2012-02-10 06:19:50