dポイントプレゼントキャンペーン実施中!

下記のリストならno002が含まれてるかどうか判定したい場合、どのようなやり方があるのでしょうか。

List<Entity>array = new ArrayList<>();
Entity entity = new Entity ();
entity.setId("ab001") ;
entity.setNo("no001") ;
array.add(entity) ;

Entity entit2 = new Entity ();
entity2.setId("ab001") ;
entity2.setNo("no002") ;
array.add(entity2)

  • 画像を添付する (ファイルサイズ:10MB以内、ファイル形式:JPG/GIF/PNG)
  • 今の自分の気分スタンプを選ぼう!
あと4000文字

A 回答 (4件)

ストリーム API とラムダ式を使えば手軽に書けます



例) リスト内のどれかが条件を満たすなら true
boolean contains = array.stream().anyMatch(v -> v.getNo().equals("no002"));

参考)
https://www.google.co.jp/search?q=java+stream+la …
https://docs.oracle.com/javase/jp/21/docs/api/ja …
    • good
    • 0

ArrayList<Entity>を継承したEntityListクラスを用意して、


bool containsNo() メソッドを用意して、
EntityListを利用する形にする。
    • good
    • 0

基本的にはできないです。



Entityクラスにequalsメソッドとhashcodeメソッドを実装すれば、containsが使えるようにはなりますが。。。
クラスの本来の意味がズレると思いますのでやめたほうがいいですね。
    • good
    • 1

arrayをループで回して、一つずつEntityオブジェクトのNo属性を確認していけばいいです。

    • good
    • 0
この回答へのお礼

ありがとうございます。
一件ずつしか無理なのでしょうか。
containsのような形で手軽にできないのでしょうか

お礼日時:2024/06/24 17:21

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!