簡體   English   中英

Scala類型不匹配的基礎類型

[英]Scala Type Mismatch underlying type

我正在編寫將Set[Tuple2[String, String]]String ,反之亦然。
我將字符串值保存為v1,v2#v3,v4#v5,v6
為了填充Set我將字符串拆分為','並且為了提取值,我試圖將每個值除以'#'但我收到

type mismatch:found:x.type(帶底層類型Array [String]

我嘗試使用的代碼是

val x = overwriters.split("#")
for(tuple <- x) {
  tuple.split(",")
}

返回的split類型是一個String數組,因此我不清楚為什么我不能拆分返回數組的每個成員

overwrites.split("#").map(_.split(",")).map(x=> (x(0),x(1))).toSet

這將以更加慣用的方式實現同​​樣的目標。

tuple.split(",")返回兩個元素的數組。 您需要將其轉換為元組。

val overwriters ="v1,v2#v3,v4#v5,v6"              
val x = overwriters.split("#").toSet
for(tuple <- x) yield {
  val t = tuple.split(",")
  (t(0),t(1))
}    

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM