我有一个地图,我想制作一个Collector
实现,该实现将从地图中获取一个条目集,并在另一个自定义POJO中设置键/值。我认为,简单的方法是创建类型为Map.Entry
的泛型类,但这不能编译。我怎样才能做到这一点?
我可以用另一种方式重新思考和设计解决方案,但是我想了解如何使类型的泛型类成为另一个类的内部接口,例如本示例。
public class TestCollectorImpl<Map.Entry> implements Collector<Map.Entry, CustomDataType, CustomDataType>{}
好像我无法在.
中使用<>
,并且无法编译。
答案 0 :(得分:2)
我想这就是你想要的:
public class TestCollectorImpl<K, V> implements Collector<Map.Entry<K, V>, Foo, Bar>
请记住,TestCollectorImpl<Map.Entry>
试图定义名称为Map.Entry
的 new 泛型类型参数(由于点的原因,该标识符无效)。您还在此处Map.Entry
中使用Collector<Map.Entry ...
中的raw type。您不想做任何一个。
您要做的是传递两个通用类型参数,以用作键的类型和条目的值。