我想创建一个(递归)地图地图.也就是说,Map的类型值是与外部地图相同类型的另一个Map.
例如:
Map<String,Map<String,... >>>> foo;
显然,我需要一些方法来引用“正在定义的类型”或其他东西才能做到这一点.我想我能做到:
Map<String,?>>
…然后只是@SupressWarnings(“未选中”)自己超越了不可避免的警告,但有更好的方法吗?
解决方法
创建辅助类或接口以引用“正在定义的类型”.像这样:
class MyMap extends HashMap<String,MyMap> { ... }
要么
interface MyMap extends Map<String,MyMap> { }
(我认为你不能没有这样的辅助类/接口.当“递归”时你需要一个名称来引用.)