迭代器不是集合,而是一種逐個訪問集合元素的方法。 下一個迭代器的兩個基本操作是hasNext
。 對it.next()
方法的調用將返回迭代器的下一個元素,並提高迭代器的狀態。可以使用Iterator
的it.hasNext
方法判斷是否還有更多元素返回。
迭代器返回的所有元素最直接的方法是使用while
迴圈。讓我們參考以下示例程式 -
示例
object Demo {
def main(args: Array[String]) {
val it = Iterator("a", "number", "of", "words")
while (it.hasNext){
println(it.next())
}
}
}
將上述程式保存在原始檔案:Demo.scala中,使用以下命令編譯和執行此程式。
D:\>scalac Demo.scala
D:\>scala Demo
a
number
of
words
查找最小和最大值元素
可以使用it.min
和it.max
方法從迭代器中找出最小值和最大值元素。 在這裏,我們使用ita
和itb
執行兩個不同的操作,因為迭代器只能遍曆一次。以下是示例程式。
object Demo {
def main(args: Array[String]) {
val ita = Iterator(20,40,2,50,69, 90)
val itb = Iterator(20,40,2,50,69, 90)
println("Maximum valued element " + ita.max )
println("Minimum valued element " + itb.min )
}
}
將上述程式保存在原始檔案:Demo.scala中,使用以下命令編譯和執行此程式。
D:\>scalac Demo.scala
D:\>scala Demo
Maximum valued element 90
Minimum valued element 2
查找迭代器的長度
可以使用it.size
或it.length
方法來查找迭代器中可用的元素數量。在這裏,我們使用ita
和itb
執行兩個不同的操作,因為迭代器只能遍曆一次。 以下是示例程式的代碼 -
object Demo {
def main(args: Array[String]) {
val ita = Iterator(20,40,2,50,69, 90)
val itb = Iterator(20,40,2,50,69, 90)
println("Value of ita.size : " + ita.size )
println("Value of itb.length : " + itb.length )
}
}
將上述程式保存在原始檔案:Demo.scala中,使用以下命令編譯和執行此程式。
D:\>scalac Demo.scala
D:\>scala Demo
Value of ita.size : 6
Value of itb.length : 6