Collect
(List
)に含まれるすべてのオブジェクトが述語から指定された値を返すようにする方法を探しています。Google Guava:述語assertTrue
擬似コード:
Collections.assertTrue(List<Ballons>, isBluePredicate)
私は、現在のAPIでこれが可能であることが表示されない(多分私は適切な場所に見ているわけではない)
これが存在しない場合、関数出口はときにそれを希望最初に偽の値に遭遇する?
Collect
(List
)に含まれるすべてのオブジェクトが述語から指定された値を返すようにする方法を探しています。Google Guava:述語assertTrue
擬似コード:
Collections.assertTrue(List<Ballons>, isBluePredicate)
私は、現在のAPIでこれが可能であることが表示されない(多分私は適切な場所に見ているわけではない)
これが存在しない場合、関数出口はときにそれを希望最初に偽の値に遭遇する?
Guava自体にアサートがありません。私は質問を理解していれば右に、あなたは偽の内の1つの結果は、私は、彼らはされません疑いがある場合、述語は、残りの要素のために評価されているかどうかを明確にしないIterables.all
assert Iterables.all(balloonsList, isBlue) : "some aren't blue";
ドキュメントを使用することができるはずです。あなたは自明にソースをチェックすることができます。
すべての要素について評価する必要がある場合は、filter
を使用し、結果のサイズを確認する必要があります。
Iterables.all(Iterable, Predicate)の方法がこれを行う通常の方法です。アサーションはあなたのものである必要があります。
本当です。 'Iterables.all'は' Iterators.all'に委譲します。これは、短絡回路ロジックが最初の失敗時にfalseを返すようにします。 – Ray