- 迭代器iterator
- 专门用来遍历挨个访问集合元素
- 获取 每个元素都有一个迭代器对象 用它来去遍历集合
- 迭代器.next()获取当前元素 移动迭代器
- drop :跳过指定个数的元素
- take:获取指定数量的元素
- 迭代器是一次性的 next之后 就不能回头
- dduplicate 复制迭代器
package iterator
object iterator01 {
def main(args:Array[String]): Unit = {
val list1 = scala.collection.immutable.List(1,2,3,4,5)
val it = list1.iterator
val it1 = it.drop(2).take(2)
while (it1.hasNext){
println(it1.next())
}
}
}
package iterator
object iterator02 {
def main(args:Array[String]): Unit = {
val list1 = List(1,2,3,4,5)
val it = list1.iterator
println(it.next())
println(it.next())
println(it.next())
}
}
package iterator
object iterator03 {
def main(args:Array[String]): Unit = {
val list1 = List(1,2,3,4,5)
val it = list1.iterator
val it2 = it.take(3)
while (it2.hasNext){
println(it2.next())
}
}
}
package iterator
object iterator04 {
def main(args:Array[String]): Unit = {
val list1 = List(1,2,3,4,5)
val it = list1.iterator
val (it1,it2) = it.duplicate
it1.next()
it1.next()
while (it1.hasNext){
println(it1.next())
}
println("------")
while (it2.hasNext){
println(it2.next())
}
}
}
package iterator
object iterator05 {
def main(args:Array[String]): Unit = {
val list1 = List(1,2,3,4,5)
val it = list1.iterator
it.next()
it.next()
println(it.next())
val newList = it.toList
println(newList)
}
}