11 阅读1分钟
object Iterator01 {
  def main(args: Array[String]): Unit = {

    val list1 = scala.collection.immutable.List(1,2,3,4,5)

    // list1.foreach(ele => {
    //   println(ele)
    // })

    // 跳过list1的前两个元素,取出之后的两个元素
    val it = list1.iterator
    val edit1 = it.drop(2).take(2)
    while(edit1.hasNext) { // 3 4
      println(edit1.next())
    }
  }
}
```
```


object Iterator02 {

  /**
   * 迭代器 (Iterator)
   * 专门用来遍历(访问)集合元素。
   * 1. 获取: 每个集合都有一个迭代器。用它去遍历集合。
   * 2. 迭代: 选代.next() 获取当前元素→移动选代器
   */
  def main(args: Array[String]): Unit = {
    val list1 = List(1,2,3,4,5)

    // 访问这五个元素
    // 1. 获取迭代器
    val it = list1.iterator

    // 输出当前的元素
    println(it.next()) // 读取→移动
    println(it.next())

    println(it.next())

    println(it.next())
    println(it.next()) // java.util.NoSuchElementException: head of empty list

    // 2. 移动选代器
    // 3. 输出当前的元素
  }
}
```
```