【发布时间】:2014-03-25 07:48:10
【问题描述】:
我正在玩 Java 8,我知道这必须通过阅读文档来实现,我只是不知道该怎么做。
我有以下工作代码:
long factorProduct = LongStream.rangeClosed(1, maxFactor)
.filter(this::isOptimalFactor)
.reduce((i, j) -> i * j)
.getAsLong();
List<Long> primeFactors = primeFactors(factorProduct);
重要的是我有一个List<Long>,可能在某些Long 号码上有重复。
现在我想将其转换为 Map<Long, Long>,其中元素作为键,出现次数作为值。
我以为:
Map<Long, Long> primeFactorCount = primeFactors.stream()
.collect(Collectors.counting());
会起作用,但不会。我查了in the java.util.stream.Collectors documentation的例子。
我需要如何使用这些功能?
【问题讨论】:
标签: java dictionary java-8 java-stream collectors