📅  最后修改于: 2020-11-02 04:31:26             🧑  作者: Mango
迭代器不是集合,而是一种逐个访问集合元素的方式。迭代器上的两个基本操作是next和hasNext 。对其进行调用。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中。以下命令用于编译和执行该程序。
\>scalac Demo.scala
\>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中。以下命令用于编译和执行该程序。
\>scalac Demo.scala
\>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中。以下命令用于编译和执行该程序。
\>scalac Demo.scala
\>scala Demo
Value of ita.size : 6
Value of itb.length : 6