以前の要素を含む条件によるグループへのJava8パーティションリスト

codeCogs

間隔のリスト(開始順にソート)があり、それらを分割して、重複する間隔のグループのリストがあるとします。したがって、たとえば、次のようになりIntervalます。

public class Interval {
    private final int start;
    private final int end;

    public Interval(int start,int end){
        this.start = start;
        this.end = end;
    }

    public int getStart(){return start;}
    public int getEnd(){return end;}

    public String toString(){ return "("+start+","+end+")"; }
}

そしてのList<Interval>ような:

[(0,4),(1,7),(6,10),(13,17),(20,100),(22,31),(60,65)]

次の出力が必要ですList<List<Interval>>

[[(0,4),(1,7),(6,10)],[(13,17)],[(20,100),(22,31),(60,65)]]

これをコーディングすることはできますが、Java 8のより機能的なアプローチを本当に楽しんでおり、Java8ストリームを使用してこれを行う慣用的な方法のようなものがあるかどうかを知りたいと思います。

提供されているコレクターの「グループ化」スタイルを見てきましたが、分類子で実際にグループ化していないため、適用されていないようです。それぞれのプロパティのみに基づいてグループを計算することはできません。個々の要素については、これまでに計算されたグループに関連して各要素のプロパティを考慮する必要があります。

確かに、関数型言語でこれを行うためのクレイジーではない方法があります(私は実際には関数型プログラマーではない誰かとして話しますが:-))。Java 8のストリームでそれを行うにはどうすればよいですか?

ルイ・ワッサーマン

できません。ストリームはこの種の問題には適していません。ストリームには「前の要素」の概念がなく、任意の順序で要素を操作できます。確かにJavaでそれを行うことができ、関数型言語でそれを行うことができますが、それはストリームがあなたが慣れている関数型言語のデータ構造のように機能するという意味ではありません。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

オプションの属性によるJava8ストリームのグループ化

分類Dev

リストから2つの別々のリストへのJava8パーティションデータ

分類Dev

java8のストリームgroupingbyを使用した文字列のコレクションによるグループ化

分類Dev

package.jsonスクリプトにスペースを含むアプリケーションへのパス

分類Dev

Java8の条件を含むネストされたループ

分類Dev

複数のプロパティをストリーミングする-Java8(基本例)

分類Dev

要素のリストを含む JAXB および XML アノテーションを使用する際のネストのマーシャリング

分類Dev

Java8のオプションリターンを使用したJPAのベストプラクティス?

分類Dev

foldernameに日付を含むログローテーション用のbashスクリプトを作成する

分類Dev

パンダ:リストオブジェクトを含むシリーズのオーバーラップによるフォワードフィル

分類Dev

整数リストをパーティションにグループ化する

分類Dev

要素のプロパティに基づいてリストから要素を選択するJava8述語

分類Dev

ボリュームグループに異なるディスクのパーティションを含めることはできますか?

分類Dev

コレクションナビゲーションプロパティを含めることによるEntityFramework Core 3.0のパフォーマンスへの影響(デカルト爆発)

分類Dev

新規インストール時に以前のEFIパーティションをどうするか?

分類Dev

SparkSQLでのパーティションプルーニングにディレクトリを使用する

分類Dev

ディレクトリとルートグループを含むLaravelアプリケーションのURL

分類Dev

Java8ストリームのプロパティによってオブジェクトのグループ化で複数の合計を計算する方法は?

分類Dev

アプリケーションプロパティに複数のkafkaコンシューマーグループを含める方法

分類Dev

Java8でリストの要素を別の要素でグループ化する方法

分類Dev

Java8でリストの要素を別の要素でグループ化する方法

分類Dev

Java8ストリームを使用してシングルパスで複数のアイテムをカウントする

分類Dev

Java 8ストリームのパーティション分割

分類Dev

すべてのフィールド(セパレータを含むが年は含まない)がオプションの場合、Java8でISO 8601日付を解析する

分類Dev

Pythonでパーティションをk個のグループ(NULLセットを含む)に設定します

分類Dev

コレクションをネストされたコレクションプロパティの要素でグループ化されたグアバマルチマップに変換するにはどうすればよいですか?

分類Dev

非パーティションストリーミングテーブルのパーティションテーブルBigqueryへの移行

分類Dev

Java8のストリームとコレクターを使用したコレクションからマップへの変換のカプセル化

分類Dev

文字列のリストを含むオブジェクト内でのJava8ストリームのグループ化

Related 関連記事

  1. 1

    オプションの属性によるJava8ストリームのグループ化

  2. 2

    リストから2つの別々のリストへのJava8パーティションデータ

  3. 3

    java8のストリームgroupingbyを使用した文字列のコレクションによるグループ化

  4. 4

    package.jsonスクリプトにスペースを含むアプリケーションへのパス

  5. 5

    Java8の条件を含むネストされたループ

  6. 6

    複数のプロパティをストリーミングする-Java8(基本例)

  7. 7

    要素のリストを含む JAXB および XML アノテーションを使用する際のネストのマーシャリング

  8. 8

    Java8のオプションリターンを使用したJPAのベストプラクティス?

  9. 9

    foldernameに日付を含むログローテーション用のbashスクリプトを作成する

  10. 10

    パンダ:リストオブジェクトを含むシリーズのオーバーラップによるフォワードフィル

  11. 11

    整数リストをパーティションにグループ化する

  12. 12

    要素のプロパティに基づいてリストから要素を選択するJava8述語

  13. 13

    ボリュームグループに異なるディスクのパーティションを含めることはできますか?

  14. 14

    コレクションナビゲーションプロパティを含めることによるEntityFramework Core 3.0のパフォーマンスへの影響(デカルト爆発)

  15. 15

    新規インストール時に以前のEFIパーティションをどうするか?

  16. 16

    SparkSQLでのパーティションプルーニングにディレクトリを使用する

  17. 17

    ディレクトリとルートグループを含むLaravelアプリケーションのURL

  18. 18

    Java8ストリームのプロパティによってオブジェクトのグループ化で複数の合計を計算する方法は?

  19. 19

    アプリケーションプロパティに複数のkafkaコンシューマーグループを含める方法

  20. 20

    Java8でリストの要素を別の要素でグループ化する方法

  21. 21

    Java8でリストの要素を別の要素でグループ化する方法

  22. 22

    Java8ストリームを使用してシングルパスで複数のアイテムをカウントする

  23. 23

    Java 8ストリームのパーティション分割

  24. 24

    すべてのフィールド(セパレータを含むが年は含まない)がオプションの場合、Java8でISO 8601日付を解析する

  25. 25

    Pythonでパーティションをk個のグループ(NULLセットを含む)に設定します

  26. 26

    コレクションをネストされたコレクションプロパティの要素でグループ化されたグアバマルチマップに変換するにはどうすればよいですか?

  27. 27

    非パーティションストリーミングテーブルのパーティションテーブルBigqueryへの移行

  28. 28

    Java8のストリームとコレクターを使用したコレクションからマップへの変換のカプセル化

  29. 29

    文字列のリストを含むオブジェクト内でのJava8ストリームのグループ化

ホットタグ

アーカイブ