如何简化这个'for'循环?

Goo*_*han 3 scala

val xsa = List(1,2,3)
val xsb = List(1,2,3)
for (i <- 0 until xsa.size) {
    val a = xsa(i)
    val b = xsb(i)
    println(a + "_" + b)
}
Run Code Online (Sandbox Code Playgroud)

我想简化长度等于'List或Array.我希望这样做:

for (a <- xsa; b <- xsb)
    println(a + "_" + b)
Run Code Online (Sandbox Code Playgroud)

但为什么它只迭代xsb一次?

Deb*_*ski 19

for ((a,b) <- xsa zip xsb)
  println(a + "_" + b)
Run Code Online (Sandbox Code Playgroud)


Lan*_*dei 8

(xsa, xsb).zipped foreach ((a, b) => println (a + "_" + b))
Run Code Online (Sandbox Code Playgroud)

要么

(xsa, xsb).zipped map (_ + "_" + _) foreach println
Run Code Online (Sandbox Code Playgroud)