code: public static <T, V> Collection<V> collectIf(
              Iterable<T> iterable,
              Predicate<? super T> predicate,
              Function<? super T, V> function,
              boolean allowReorderedResult)
      {
          return FJIterate.collectIf(iterable, predicate, function, null, allowReorderedResult);
      }
docs: Same effect as {@link Iterate#collectIf(Iterable, Predicate, Function)},
  but executed in parallel batches, and with potentially reordered results.
  
  @param allowReorderedResult If the result can be in a different order.
  Allowing reordering may yield faster execution.
  @return The collected elements. The Collection will be of the same type
  as the input (List or Set)