タグ付けされた質問 「spliterator」

4
Java 8でのSpliterator、Collector、Streamについて
StreamJava 8 のインターフェースを理解するのに問題がSpliteratorありCollectorます。特に、とインターフェースに関係しているところです。私の問題はSpliterator、Collectorインターフェイスとインターフェイスをまだ理解できないことStreamです。その結果、インターフェイスはまだ少しあいまいです。 正確にはa Spliteratorとa は何Collectorですか?どのように使用できますか?私が自分で(SpliteratorまたはCollectorおそらくStreamそのプロセスで自分自身を)書こうと思っている場合、私は何をすべきで、何をすべきではありませんか? ウェブ上に散らばっているいくつかの例を読みましたが、ここにあるすべてのものはまだ新しく、変更される可能性があるため、例やチュートリアルはまだ非常にまばらです。

2
サイズが不明なアンバランスなスプリッターを再バランスできますか?
を使用しStreamて、リモートで保存された不明な数のJSONファイルの異種のセットの処理を並列化したいと思います(ファイルの数は事前に不明です)。ファイルのサイズは、ファイルごとに1つのJSONレコードから、他のいくつかのファイルでは最大100,000レコードまでさまざまです。JSONレコードこの場合には、自己完結型のJSONオブジェクトは、ファイル内の1つの行として表現します。 私は本当にこれにストリームを使いたいので、これを実装しましたSpliterator: public abstract class JsonStreamSpliterator<METADATA, RECORD> extends AbstractSpliterator<RECORD> { abstract protected JsonStreamSupport<METADATA> openInputStream(String path); abstract protected RECORD parse(METADATA metadata, Map<String, Object> json); private static final int ADDITIONAL_CHARACTERISTICS = Spliterator.IMMUTABLE | Spliterator.DISTINCT | Spliterator.NONNULL; private static final int MAX_BUFFER = 100; private final Iterator<String> paths; private JsonStreamSupport<METADATA> reader = null; …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.