オブジェクトの2つの配列を比較してグループ化してカウントするJava

世紀:

私には3つのクラスAgencyTeamありAgentます。アンはAgentに属しているTeamに属していますAgency

それぞれに何人のエージェントがいるかを報告する必要がありますAgency私はデータベースを持っていません、ただArrayList次のデータを持っています:

List<Agent> agents
List<Team> teams
List<Agency> agencies

上のAgentクラス、私が持っているgetTeam()持っている、getAgency()(からTeamクラス)。

私はやろうとしていました:

for (Agency ag : agencies) {
    for (Agent a : agents) {
        if (a.getTeam() != null) {
            if (a.getTeam().getAgency() == ag) {
               teste = "Agency from agent" + a.getTeam().getAgency().getCode() + "Agency from agency" + ag.getCode();
            }
        }
    }
}

しかし、私はそれをそれぞれに分けて数える方法がわかりませんAgency

だから私は試した:

Map<String, Long> agentsAtAgency = 
    agents.stream()
          .collect(Collectors.groupingBy(Agent::getTeam, Collectors.counting()));

しかし、私はから代理店を取得することはできません。Agent私が必要getTeam().getAgency()としていることと、このマップではそれができないためです。

要約:

私には代理店があります:A、B、C。

エージェントがいます:Xは代理店Aに、Yは代理店Aに、Zは代理店Bに関連しています。

表示する必要があります:エージェンシーA:2エージェント/エージェンシーB:1エージェント/エージェンシーC:0

誰かが私を助けてくれますか?

彼らはいた :

あなたは近くにいた。この場合、メソッド参照の代わりにラムダ式を使用する必要があります。

これにより、a -> a.getTeam().getAgency()(または出力がaであるため、型Agency持ついくつかのプロパティによって)グループ化できますStringMap<String, Long>

Map<String, Long> agentsAtAgency = 
    agents.stream()
          .filter(a -> a.getTeam() != null)
          .collect(Collectors.groupingBy(a -> a.getTeam().getAgency().getName(),
                                         Collectors.counting()));

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

オブジェクトの配列内の複数のプロパティ値をカウントしてグループ化する方法は?

分類Dev

オブジェクト配列内の重複をカウントし、配列またはオブジェクトキーでグループ化します

分類Dev

オブジェクト配列内の重複をカウントし、配列またはオブジェクトキーでグループ化します

分類Dev

2つの配列をオブジェクトと比較して、類似している配列をフィルタリングする方法(vanilla JS)

分類Dev

lodashを使用して単一のプロパティでオブジェクトの2つの配列をフィルタリング/比較する方法は?

分類Dev

Karateツールを使用して配列を含む2つのJSONオブジェクトを比較する方法

分類Dev

プロパティを比較してオブジェクトの配列をフィルタリングする

分類Dev

配列のJSONオブジェクトをカウントしてループします

分類Dev

プロパティとJavaScriptのカウントに基づいてオブジェクトの配列でグループ化します

分類Dev

オブジェクトのリストをグループ化し、Javaコレクションを使用してカウントします

分類Dev

オブジェクトの配列内の重複する値に基づいて、オブジェクトをグループ化して保持します

分類Dev

underscore.jsを使用して、各配列の3つのオブジェクトのグループに配列値をグループ化します。

分類Dev

Javaのストリームを使用してオブジェクト配列の平均をグループ化して計算する

分類Dev

値を持つオブジェクトをインデックスの配列としてグループ化する

分類Dev

Javascriptのオブジェクトを使用して配列アイテムをグループ化する

分類Dev

オブジェクトの配列をグループ化して合計する方法は?

分類Dev

オブジェクトの配列から値をグループ化して合計する方法は?

分類Dev

javascriptでオブジェクトの配列をグループ化して合計する方法は?

分類Dev

javascriptでオブジェクトの配列をグループ化して合計する方法は?

分類Dev

配列型キーに基づいてオブジェクトの配列をグループ化します

分類Dev

配列またはオブジェクトをループしてカウントを更新する

分類Dev

jqueryを使用してカテゴリIDで配列オブジェクトをグループ化する

分類Dev

オブジェクトの配列を指定して、それらをグループ化し、最小値を含む必要があるプロパティを指定して、各オブジェクトの1つのレコードのみを残します

分類Dev

lodashを使用してオブジェクトの配列を特定の形式にグループ化します

分類Dev

フィールドを照合してオブジェクトの2つの配列にマッピングすることで配列を更新する

分類Dev

オブジェクト内の要素が異なるオブジェクトの2つの配列を比較して、配列をフィルタリングするにはどうすればよいですか?

分類Dev

配列の要素と比較してオブジェクトをフィルタリングする方法

分類Dev

Django:オブジェクトをグループ化してカウントする簡単な方法は?

分類Dev

グループ化プロパティに基づいてオブジェクトの2つの配列を結合します

Related 関連記事

  1. 1

    オブジェクトの配列内の複数のプロパティ値をカウントしてグループ化する方法は?

  2. 2

    オブジェクト配列内の重複をカウントし、配列またはオブジェクトキーでグループ化します

  3. 3

    オブジェクト配列内の重複をカウントし、配列またはオブジェクトキーでグループ化します

  4. 4

    2つの配列をオブジェクトと比較して、類似している配列をフィルタリングする方法(vanilla JS)

  5. 5

    lodashを使用して単一のプロパティでオブジェクトの2つの配列をフィルタリング/比較する方法は?

  6. 6

    Karateツールを使用して配列を含む2つのJSONオブジェクトを比較する方法

  7. 7

    プロパティを比較してオブジェクトの配列をフィルタリングする

  8. 8

    配列のJSONオブジェクトをカウントしてループします

  9. 9

    プロパティとJavaScriptのカウントに基づいてオブジェクトの配列でグループ化します

  10. 10

    オブジェクトのリストをグループ化し、Javaコレクションを使用してカウントします

  11. 11

    オブジェクトの配列内の重複する値に基づいて、オブジェクトをグループ化して保持します

  12. 12

    underscore.jsを使用して、各配列の3つのオブジェクトのグループに配列値をグループ化します。

  13. 13

    Javaのストリームを使用してオブジェクト配列の平均をグループ化して計算する

  14. 14

    値を持つオブジェクトをインデックスの配列としてグループ化する

  15. 15

    Javascriptのオブジェクトを使用して配列アイテムをグループ化する

  16. 16

    オブジェクトの配列をグループ化して合計する方法は?

  17. 17

    オブジェクトの配列から値をグループ化して合計する方法は?

  18. 18

    javascriptでオブジェクトの配列をグループ化して合計する方法は?

  19. 19

    javascriptでオブジェクトの配列をグループ化して合計する方法は?

  20. 20

    配列型キーに基づいてオブジェクトの配列をグループ化します

  21. 21

    配列またはオブジェクトをループしてカウントを更新する

  22. 22

    jqueryを使用してカテゴリIDで配列オブジェクトをグループ化する

  23. 23

    オブジェクトの配列を指定して、それらをグループ化し、最小値を含む必要があるプロパティを指定して、各オブジェクトの1つのレコードのみを残します

  24. 24

    lodashを使用してオブジェクトの配列を特定の形式にグループ化します

  25. 25

    フィールドを照合してオブジェクトの2つの配列にマッピングすることで配列を更新する

  26. 26

    オブジェクト内の要素が異なるオブジェクトの2つの配列を比較して、配列をフィルタリングするにはどうすればよいですか?

  27. 27

    配列の要素と比較してオブジェクトをフィルタリングする方法

  28. 28

    Django:オブジェクトをグループ化してカウントする簡単な方法は?

  29. 29

    グループ化プロパティに基づいてオブジェクトの2つの配列を結合します

ホットタグ

アーカイブ