google-collectionsを使ってSetにフィルタをかけるサンプル
Google Collectionsなるものを発見。APIを眺めていて、Sets.filterユーティリティが個人的にちょいぐっときたのでサンプルを書いてみました。
import static com.google.common.base.Predicates.*; import static com.google.common.collect.Sets.*; .... // セットを作る。 Set<String> set = newHashSet("aaa","bbb","ccc"); // このメソッドも地味にうれしかったり。 // Setをフィルタリング。 // or や equals はPredicatesの関数で、これで作成されたPredicateにマッチする // 要素を含むSetが返される。 Set<String> selected = filter( set, or( equalTo("bbb"), equalTo("ccc")) ); System.out.println( selected );
実行結果です。
[ccc, bbb]
こうなると、map とかInject とかもほしいところですな。