为什么打印List [Array [String]]不输出值?

Nik*_*RED 0 arrays scala println

我试图理解我从下面的代码中获得的输出,它显示一些带有前缀的字母数字值@。我如何将其更改为("Hello,world"),("How,are,you")

Scala代码:

val words = List("Hello_world","How_are_you" )
val ww= words.map(line=>line.split("_"))
println(ww)
Run Code Online (Sandbox Code Playgroud)

输出

List([Ljava.lang.String;@7d4991ad, [Ljava.lang.String;@28d93b30)
Run Code Online (Sandbox Code Playgroud)

Dmy*_*tin 6

.toList

val ww = words.map(line=>line.split("_").toList)
// List(List(Hello, world), List(How, are, you))
ww == List(List("Hello", "world"), List("How", "are", "you")) // true
Run Code Online (Sandbox Code Playgroud)

否则wwList[Array[String]]而不是,List[List[String]]println显示数组的哈希码。

也许您正在寻找

val ww1 = words.map(_.replace("_", ","))
// List(Hello,world, How,are,you)
ww1 == List("Hello,world", "How,are,you") // true
Run Code Online (Sandbox Code Playgroud)

  • @GeorgeLeung`words.flatMap(line => line.split(“ _”)。toList)`产生`List(Hello,world,How,are,you)`。但是Op想要`(“ Hello,world”),(“ How,are,you”)`。 (3认同)