java.lang.Object
Given 是一个为给定字符串返回 s 的 Java 方法。我想将此方法包装在 Scala 方法中,该方法将返回的实例转换为某种类型T
。如果转换失败,该方法应该返回None
. 我正在寻找类似的东西:
def convert[T](key: String): Option[T] = {
val obj = someJavaMethod(key)
// return Some(obj) if obj is of type T, otherwise None
}
convert[Int]("keyToSomeInt") // yields Some(1)
convert[String]("keyToSomeInt") // yields None
(如何)这可以使用 Scala 的反射 API 来实现吗?我很清楚convert
可能必须更改的签名。