RFR: 8248862: Implement Enhanced Pseudo-Random Number Generators [v3]

Rémi Forax github.com+828220+forax at openjdk.java.net
Wed Nov 25 16:28:58 UTC 2020


On Wed, 25 Nov 2020 15:59:01 GMT, Jim Laskey <jlaskey at openjdk.org> wrote:

>> src/java.base/share/classes/java/util/random/RandomGeneratorFactory.java line 88:
>> 
>>> 86:  * <pre>{@code
>>> 87:  *     RandomGeneratorFactory<RandomGenerator> best = RandomGenerator.all()
>>> 88:  *         .sorted((f, g) -> Integer.compare(g.stateBits(), f.stateBits()))
>> 
>> use Comparator.comparingInt(RandomGenerator::stateBits) instead of the lambda
>
> Not sure that `.sorted(Comparator.comparingInt(RandomGeneratorFactory<RandomGenerator>::stateBits).reversed())` is simpler than  `.sorted((f, g) -> Integer.compare(g.stateBits(), f.stateBits()))`.

At least, it's more clear that it's reversed, i've initially miss the fact that f and g are swapped.
And :: is able to do inference so, i believe it can be written
  `.sorted(Comparator.comparingInt(RandomGeneratorFactory::stateBits).reversed())`

-------------

PR: https://git.openjdk.java.net/jdk/pull/1292



More information about the security-dev mailing list