0

这里数组值使用迭代器迭代并一一打印。

或者[我的语言不好]

我想使用迭代一个一个地打印数组值

package com.aitrich.collection

object IteratorDemo {
def main(args: Array[String]) {

      var myList = Array("a", "number", "of", "words")  

      var l=myList.length

      for( i <- 0 to l){
      var Lst:String=myList.toString()
      val it = Iterator(l.formatted(Lst))
      while (it.hasNext){
         println(it.next())
      }
      }

   }
}

输出显示

[Ljava.lang.String;@aad33f6
[Ljava.lang.String;@aad33f6
[Ljava.lang.String;@aad33f6
[Ljava.lang.String;@aad33f6
[Ljava.lang.String;@aad33f6
4

1 回答 1

4

在 Scala 中,避免使用索引来处理集合更为惯用:

val myList = Array("a", "number", "of", "words") 
myList.foreach(s => println(s))

请注意,它Iterator(a)会创建一个包含单个元素的迭代器a

如果要使用元素的索引作为前缀:

myList.zipWithIndex.foreach{ case (s, i) => println(s"$i: $s")}

// 0: a
// 1: number
// 2: of
// 3: words
于 2013-08-17T05:24:00.017 回答