1
リストマッチングの等価性で1番目の要素を探したいと思います。 :RxJava述語フィルタ
1は、そのサブタイプに
class EditorialBlock extends Block
2フィルタ素子
3リターンリターンヌルを発見していないそうでない場合は最初の要素をキャスト。
通常、私は、これはRxJavaで書かれたことができますどのように
EditorialBlock findBlockByID(final List<Block> contentBlocks, final String identifier) {
for (Block block : contentBlocks) {
EditorialBlock item = (EditorialBlock) block; // 1 casting
if (identifier.equals(item.getIdentifier())) { // 2 filter
return item; // 3 return the first element
}
}
return null;
}
としてそれを書くのだろうか? 0反復、1つの鋳造、2フィルター、3リターン最初の要素はnull
注: あなたはまた、4つのステップを分解することができます私は、グアバの述語のファンでした。私のAndroidアプリでデックス数を減らすために、可能ならば、RxJavaをGuavaのPredicatesに置き換えます。