将映射转换为键=值对

时间:2016-09-02 10:36:05

标签: scala maps

我有map: Map[AnyRef, AnyRef]。在以下字符串中映射它的最佳方法是什么

"key1=value1 key2=value2 ..."

在Java中很容易。我会用它

map.entrySet()
    .stream()
    .map(e -> e.getKey().toString() + "=" + e.getValue().toString())
    .collect(joining(" "))

但是如何在Scala中做到这一点?

3 个答案:

答案 0 :(得分:2)

map.map{ case (a, b) => a.toString + "=" + b.toString}.mkString(" ")

答案 1 :(得分:2)

对字符串插值使用for comprehension,

(for ((k,v) <- map) yield s"$k=$v").mkString(" ")

答案 2 :(得分:2)

map map { case (a, b) =>  s"$a=$b" } mkString " "

.是可选的,并使用字符串插值使其看起来不错。