我是新來斯卡拉不同類型的參數...可變參數與斯卡拉
不管怎樣,我想要做的事,如:
val bar = new Foo("a" -> List[Int](1), "b" -> List[String]("2"), ...)
bar("a") // gives List[Int] containing 1
bar("b") // gives List[String] containing "2"
當我這樣做的問題:
class Foo(pairs: (String, List[_])*) {
def apply(name: String): List[_] = pairs.toMap(name)
}
pairs
是Array [(String,List [Any])(或類似的東西)和apply()
是錯誤的,因爲List[_]
是一種類型,而不是「不同類型」。即使可變參數*返回了一個元組,我仍然不確定如何讓bar("a")
返回List[OriginalTypePassedIn]
。那麼是否有這樣做的方法?斯卡拉看起來非常靈活,所以感覺應該有一些先進的方式來做到這一點。
這不是一個確切的重複,但相當類似http://stackoverflow.com/questions/17684023/different-types -in-map-scala –
@Rüdiger您在鏈接中的回答非常酷,謝謝。 – eddiemundorapundo