3
我有一個案例類在斯卡拉 - 轉換的情況下,類List成元組
case class table(a: String, b: Option[String])
和我有該類型的列表的列表 - 讓叫它LIST1
val list1: List[table] = tabele.get() // just filling the list from an SQL
現在我想要將「表」的列表改爲(String,Option [String])的簡單列表 我在該主板上發現的是如何將case類轉換爲如下的元組 :
case class table(a:String, b:Int)
val (str, in) = table.unapply(table("test", 123)).get()
但我不知道如何在列表中使用這個:( 我想的東西用foreach這樣的:
val list2: List[(String, Option[String])] = Nil
list1.foreach(x => list2 :: table.unapply(x).get())
'error (String,Option[String]) does not take parameters
所以我的問題是 - >我怎麼能不應用上的每一個元組使用一個列表?
提前感謝
PS:其實我是想改變列表的類型,因爲我想用 「.toMap」 該名單 上 - 這樣的:
val map1 = list1.toMap.withDefaultValue(None)
與錯誤:
Cannot prove that models.table <:<(T,U)
它會工作的(字符串,選項[字符串])列表
是做到了!謝謝 – RohbRoy 2013-02-27 14:08:51
點免費版:'list1 flatMap table.unapply' – sschaef 2013-02-27 16:22:53
爲什麼我沒有想到... ... – Faiz 2013-02-27 16:25:43