私は追加情報を持つ人々のリストを持っています - 例えば本のレンタルとしましょう。したがって、リスト内の各 Rental-object には、属性としての Person-object とレンタル情報が含まれます。人ごとに、リストには 1..n のエントリがあります。
ここで、いくつかの基準に基づいてこのリストをフィルタリングする必要があります。エントリの 1 つが特定の基準に一致する場合、他のエントリが基準に一致しなくても、その人物のすべてのエントリを削除したいと考えています。
1 つのフィルターでこれを行う良い方法はありますか? 別の方法は、リストをスキャンし、エントリを削除する必要がある人を特定してから、次のようなものを適用することです
Collections2.filter(myList, new MyPredicate(peopleIWantToRemove))
しかし、私は一度だけのリストトラバーサルでそれをやりたいと思っています。これどうやってするの?