我知道我的问题与使用Java8的Count int事件非常类似 ,但我仍然无法解决我的情况,这必须更容易解决.
需要计算整数流中整数重复的次数(将来自文件,最多可达1000000个整数).我认为创建一个地图可能很有用,其中Integer将是一个Key,并且出现次数将是一个值.
例外是
错误:(61,66)java:接口java.util.stream.IntStream中的方法收集不能应用于给定的类型;
required:java.util.function.Supplier,java.util.function.ObjIntConsumer,java.util.function.BiConsumer found:java.util.stream.Collector> reason:无法推断类型变量R(实际和正式)参数列表长度不同)
但是,在Java 8中有一个Collectors.groupingBy,应该就足够了
Collector<T, ?, Map<K, D>> groupingBy(Function<? super T, ? extends K> classifier,Collector<? super T, A, D> downstream)
Run Code Online (Sandbox Code Playgroud)
问题是我的代码没有编译,我没有看到 - 为什么.我把它简化为:
Map<Integer,Integer> result = IntStream.range(0,100).collect(Collectors.groupingBy(Function.identity(), Collectors.counting()));
Run Code Online (Sandbox Code Playgroud)
不编译的原因是什么?先感谢您 :)
故事:我最近发现jar.enabled = false在多项目 Gradle 项目的项目 b-features 中设置将阻止同一项目的项目 a-features 能够通过以下方式引用 B
dependencies {
compile project(':b-features')
}
Run Code Online (Sandbox Code Playgroud)
问题:为什么jar.enabled = false阻止项目 A 成功引用项目 B?
附加信息:
根项目的 build.gradle:
group 'gradle.studies'
apply plugin: 'java'
...
Run Code Online (Sandbox Code Playgroud)
根项目的settings.gradle:
rootProject.name = 'multi-project-reference'
include 'a-features'
include 'b-features'
Run Code Online (Sandbox Code Playgroud)
项目的 build.gradle a-features:
group 'gradle.studies'
apply plugin: 'java'
...
dependencies {
compile project(':b-features')
}
...
Run Code Online (Sandbox Code Playgroud)
项目的build.gradle b-features
group 'gradle.studies'
apply plugin: 'java'
jar.enabled = false
...
Run Code Online (Sandbox Code Playgroud)
a-features项目A类:
package outerproject;
import innerproject.B;
public class A {
public …Run Code Online (Sandbox Code Playgroud)