Kotlin:使用分隔符打印地图中的所有元素

puz*_*ler 3 kotlin

我是科特林新手。我很好奇从带有分隔符的地图中打印所有键:值对的正确方法是什么。这是我的解决方案,但不知何故感觉不对:

val m = mapOf("Juice" to 4.5, "Wine" to 8.0, "Soda" to 2.2)
val itr = m.iterator()
if(itr.hasNext()) {
    var drink = itr.next()
    print("${drink.key}: ${drink.value}")
}
while (itr.hasNext()) {
    var drink = itr.next()
    print(", ${drink.key}: ${drink.value}")
}
Run Code Online (Sandbox Code Playgroud)

输出:

Juice: 4.5, Wine: 8.0, Soda: 2.2
Run Code Online (Sandbox Code Playgroud)

Jul*_*lia 8

这个怎么样?

val m = mapOf("Juice" to 4.5, "Wine" to 8.0, "Soda" to 2.2)
println(m.map { "${it.key}: ${it.value}" }.joinToString(", "))
Run Code Online (Sandbox Code Playgroud)

这打印:

Juice: 4.5, Wine: 8.0, Soda: 2.2
Run Code Online (Sandbox Code Playgroud)