xxx类型的构造对象与描述符的返回类型T不兼容

时间:2019-06-18 19:44:01

标签: java generics java-8 collectors supplier

我正在尝试构建一个Collector类,该类将我的结果汇总到TreeMap中。我在对累加器/结果使用通用类型时遇到麻烦。问题出现在我的供应商方法的定义中。

我的班级目前看起来像这样:

public class CollectExclusions<T> implements Collector<CellList, T, T> {

    @Override
    public Supplier<T> supplier() {
        return TreeMap<String, ArrayList<String>>::new;
    }

    public static <T> CollectExclusions<T> toExclusionsSet() {
        return new CollectExclusions<>();
    }
}

我按如下方式调用它:

TreeMap<String, ArrayList<String>> exclusions = board.getWords().stream()
    .collect(CollectExclusions.toExclusionsSet());

我需要在班级的什么地方指定累加器/结果(T)的类型,以使该类尽可能地通用,如何在供应商中指定该类型?

0 个答案:

没有答案