T
- データソースが提供する値の型U
- 反復子が返す値の型public final class ChunkLazyIterable<T,U> extends Object implements Iterable<U>
Iterator
を提供するIterable
の実装クラス.
このクラスのiterator()
メソッドが返す反復子Iterator
はデータソースからの値の取得をチャンク単位で行う。
チャンク単位で取得した値は内部的にキャッシュされIterator.next()
により1件ずつ返される。
なお反復子のメソッドIterator.remove()
はサポートされておらず、
呼びだされた場合はかならず例外UnsupportedOperationException
をスローする。
修飾子とタイプ | クラスと説明 |
---|---|
static class |
ChunkLazyIterable.ChunkYield<T>
ChunkLazyIterable.ChunkYieldCallable.yield(Object, int) が値を返すのに用いるコンテナ. |
static interface |
ChunkLazyIterable.ChunkYieldCallable<T,U>
遅延評価による反復子のためユーザが実装するインターフェース.
|
static interface |
ChunkLazyIterable.Supplier<T>
データソースを表すインターフェース.
|
修飾子とタイプ | メソッドと説明 |
---|---|
static <T,U> ChunkLazyIterable<T,U> |
forEach(ChunkLazyIterable.Supplier<T> source,
ChunkLazyIterable.ChunkYieldCallable<T,U> callable)
ChunkLazyIterable.Supplier をデータソースとするIterable を生成して返す. |
static <T,U> ChunkLazyIterable<T,U> |
forEach(Iterable<T> source,
ChunkLazyIterable.ChunkYieldCallable<T,U> callable)
|
static <T,U> ChunkLazyIterable<T,U> |
forOnce(T source,
ChunkLazyIterable.ChunkYieldCallable<T,U> callable)
単一値をデータソースとする
Iterable を生成して返す. |
Iterator<U> |
iterator() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
forEach, spliterator
public static <T,U> ChunkLazyIterable<T,U> forOnce(T source, ChunkLazyIterable.ChunkYieldCallable<T,U> callable)
Iterable
を生成して返す.public static <T,U> ChunkLazyIterable<T,U> forEach(Iterable<T> source, ChunkLazyIterable.ChunkYieldCallable<T,U> callable)
public static <T,U> ChunkLazyIterable<T,U> forEach(ChunkLazyIterable.Supplier<T> source, ChunkLazyIterable.ChunkYieldCallable<T,U> callable)
T
- データソースから取得されるオブジェクトの型U
- Iterable
の要素型source
- データソースとなるChunkLazyIterable.Supplier
callable
- データソースから取得された値をもとに判断・加工を行ってその値と制御情報を反復子に提供するインターフェースIterable
のインスタンスCopyright © 2016. All rights reserved.