私は良いタイトルで達成したい目標をどのように記述するのか分かりません。私はそれぞれがブール値のメンバーを持つオブジェクトのリストを持っています。このリストをフィルタリングしてリストの最初のオブジェクトの最後に、このブールメンバーがtrueに設定されているオブジェクトを取得します。Javaストリーム - 連続する同じフィールドのオブジェクトを取得する
これはストリームなしで行う方法です。すべてのオブジェクトをgetterメソッドがtrueを返す新しいリストに追加し、最初の要素がfalseを返すときに停止します。
int i = 0;
while(i < list.size()){
if(!list.get(i).isMemberTrue()){
break;
}
else{
newList.add(list.get(i));
}
i++;
}
これは何とかシーケンシャルストリームで可能ですか?
'list.stream()。フィルタ(member->メンバー:: isMemberTrue).findFirst()' – emotionlessbananas
もう一つのリストから、とにかくあなたの最初の 'member'がメンバーでない場合、あなたのループは' break'ますしたがって、あなたが何をしているかを確認してください。 – emotionlessbananas
はい、最初のオブジェクトが既に偽を返す場合は、結果のリストが空になることがあります。 – Semaphor