Chapter 13 Iterators

※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

第 13 章 イテレータ (Iterators)

イテレータは、ストリームの命令型版です。ストリームのように、イテレータには無限リストを記述する能力があります。しかし、イテレータの成分を含むデータ構造はありません。代わりに、2つの抽象メソッド next と hasNext を使って、イテレータはシーケンスをたどることができます。

trait Iterator[+A] {
    def hasNext: Boolean
    def next: A

メソッド next は、次の要素を返します。メソッド hasNext は next で返すべき要素がまだあるかどうかを示します。イテレータは他にもいくつかメソッドをサポートしていますが、それは後ほど説明します。

例として、1 から 100 までの数の平方を表示してみます。

val it: Iterator[Int] = Iterator.range(1, 100)
while (it.hasNext) {
    val x = it.next
    println(x * x)
}

名前:
コメント:
最終更新:2011年02月24日 08:59
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。