我试图转换List("a,1" , "b,2" , "c,3" , "a,2" , "b,4")
与价值观键入scala.collection.immutable.HashMap[String, java.util.List[String]]
:字符串转换列表分为地图[字符串,列表]
a -> 1,2
b -> 2,4
c -> 3
所以每个键包含其值的列表。
这里是我到目前为止的代码:
object ConvertList extends Application {
var details = new scala.collection.immutable.HashMap[String, java.util.List[String]]
val strList = List("a,1" , "b,2" , "c,3" , "a,2" , "b,4")
//Get all values
val getValue : Function1[String, String] = { a => a.split(",")(1) }
val allValues : List[String] = strList map getValue
//get unique values
val uniqueValues = allValues.toSet[String]
//Somehow map each unique value to a value in the original List....
println(uniqueValues)
println(strList.flatten)
//userDetails += "1" -> List("a","b",
}
怎么能这种转换进行?
你对*不可变* hashmap是严格的吗? –
@ om-nom-nom不,我只是想避免一个必要的解决方案。 –