フィルター

Javadoc Javadoc


述語が与えられた場合、その述語を満たさないすべての要素を除外します。また、要素の自然順序に基づいて、与えられた値との不等式に基づいてフィルタリングするためにも使用できます。

例1:述語を使用したフィルタリング

PCollection<String> allStrings = Create.of("Hello", "world", "hi");
PCollection<String> longStrings = allStrings
    .apply(Filter.by(new SerializableFunction<String, Boolean>() {
      @Override
      public Boolean apply(String input) {
        return input.length() > 3;
      }
    }));
結果は、「Hello」と「world」を含む`PCollection`です。

例2:不等式を使用したフィルタリング

PCollection<Long> numbers = Create.of(1L, 2L, 3L, 4L, 5L);
PCollection<Long> bigNumbers = numbers.apply(Filter.greaterThan(3));
PCollection<Long> smallNumbers = numbers.apply(Filter.lessThanEq(3));
その他のバリアントには、 `Filter.greaterThanEq`、 `Filter.lessThan`、 `Filter.equal`などがあります。

例3:ラムダ式を使用したフィルタリング