Bộ sưu tập Scala - Trình lặp lại

Trình lặp không phải là một tập hợp, mà là một cách để truy cập từng phần tử của một tập hợp. Hai hoạt động cơ bản trên mộtiterator it Chúng tôi nexthasNext. Một cuộc gọi đếnit.next()sẽ trả về phần tử tiếp theo của trình lặp và nâng cao trạng thái của trình lặp. Bạn có thể tìm hiểu xem có nhiều phần tử hơn để trả lại bằng cách sử dụngit.hasNext phương pháp.

Cách đơn giản nhất để "bước qua" tất cả các phần tử được trả về bởi một trình vòng lặp là sử dụng vòng lặp while. Chúng ta hãy theo dõi chương trình ví dụ sau.

Thí dụ

object Demo {
   def main(args: Array[String]) {
      val it = Iterator("a", "number", "of", "words")
      while (it.hasNext){
         println(it.next())
      }
   }
}

Lưu chương trình trên vào Demo.scala. Các lệnh sau được sử dụng để biên dịch và thực thi chương trình này.

Chỉ huy

\>scalac Demo.scala
\>scala Demo

Đầu ra

a
number
of
words

Tìm phần tử có giá trị tối thiểu & tối đa

Bạn có thể dùng it.minit.maxphương pháp để tìm ra các phần tử có giá trị nhỏ nhất và lớn nhất từ ​​một trình lặp. Ở đây, chúng tôi đã sử dụngitaitbđể thực hiện hai hoạt động khác nhau vì trình lặp chỉ có thể được duyệt một lần. Sau đây là chương trình ví dụ.

Thí dụ

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 )
   }
}

Lưu chương trình trên vào Demo.scala. Các lệnh sau được sử dụng để biên dịch và thực thi chương trình này.

Chỉ huy

\>scalac Demo.scala
\>scala Demo

Đầu ra

Maximum valued element 90
Minimum valued element 2

Tìm chiều dài của lặp lại

Bạn có thể sử dụng it.size hoặc là it.lengthcác phương pháp để tìm ra số phần tử có sẵn trong một trình lặp. Ở đây, chúng tôi đã sử dụng ita và itb để thực hiện hai hoạt động khác nhau vì trình lặp chỉ có thể được duyệt một lần. Sau đây là chương trình ví dụ.

Thí dụ

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 )
   }
}

Lưu chương trình trên vào Demo.scala. Các lệnh sau được sử dụng để biên dịch và thực thi chương trình này.

Chỉ huy

\>scalac Demo.scala
\>scala Demo

Đầu ra

Value of ita.size : 6
Value of itb.length : 6