迭代器的定义
Scala Iterator 不是一个集合,它是一种用于访问集合的方法。
如果要访问集合,需要通过集合对应的迭代器调用迭代器的方法来访问。另外还可以利用集合本身提供的方法访问集合。
迭代器使用
需要遍历集合Set,则需要先遍历集合对应的迭代器。
/*
* List(1,2,3,4,5)
* */
object Iterator1 {
def main(args: Array[String]): Unit = {
val list1 = scala.collection.immutable.List(1,2,3,4,5)
// list1.foreach(ele =>{
// println(ele)
// })
// 跳过list的前面两个元素,而输出随后的两个元素
val it = list1.iterator
val it1 = it.drop(2).take(2)
//如果有下一个元素
while(it1.hasNext){ // 3 4
// 访问下一个元素
println(it1.next())
}
}
}
迭代器不可以复用要,当遍历完迭代器后,会自动结束,即不可以对同一个迭代器遍历两遍。
当迭代器使用foreach方法打印时,第一次输出正常,第二次会返回空