> If I make the method static and rename it to "gamma", then I can do the much > simpler: > Stream<Double> d = numbers.parallelStream().map(Gamma::gamma);
It seems to me like the above, suggested by Stian earlier if I am not mistaken, is the best option of the ones you have discussed, once you agree on a name for the static method. I don't think there is a need to explicitly implement DoubleUnaryOperator as a method reference can always be implicitly converter by the compiler.