1
我将如何使此模式起作用? func()无法编译。我理解这个设置的问题,但是基本上可以实现的模式是什么?返回值的scala多态类型
class A() {
val a: Int = 123
val b: String = "xxx"
}
def func[T](key: String, a: A): T = {
if (key == "a") a.a // would make T an Int
else if (key == "b") a.b // would make T a String
}
val a = new A()
func[Int]("a", a)
func[String]("b", a)
你是什么意思 “基本上做到这一点” 呢?这不是一种模式,这是不可能的。 –