0
我有一個字符串表示形式,我想表示爲HList。下面是它:包含序列的無形HList
123456,/02/2017,0,0,0,0,0,0,170.153
讓我感興趣的類型是:
Int :: DateTime :: Seq[Double]
我能夠管理一個一對一的映射完成,但我怎麼能轉換我的上述表示到我想要的無形的類型?有什麼建議麼?
我有一個字符串表示形式,我想表示爲HList。下面是它:包含序列的無形HList
123456,/02/2017,0,0,0,0,0,0,170.153
讓我感興趣的類型是:
Int :: DateTime :: Seq[Double]
我能夠管理一個一對一的映射完成,但我怎麼能轉換我的上述表示到我想要的無形的類型?有什麼建議麼?
我不確定你的問題在哪裏。爲什麼你就不能這樣做:
def hlistFromString(s: String): Int :: Date :: Seq[Double] :: HNil = {
val ss = s.split(',')
ss(0).toInt :: new Date(ss(1)) :: ss.toSeq.drop(2).map(_.toDouble) :: HNil
}
val s = "123456,01/02/2017,0,0,0,0,0,0,170.153"
println(hlistFromString(s))
輸出是
123456 ::週一1月2日00:00:00 2017年:: ArrayBuffer(0.0,0.0,0.0,0.0,0.0 ,0.0,170.153)::抗擾度邏輯
我唯一的猜測是,你錯過了任何HList
類型應與HNil
結束是的,我的確沒有注意到的高抗擾度邏輯! – sparkr