初始化哈希映射<字符串,哈希映射<字符串,字符串时类型不匹配错误>>



因为使用泛型是初始化HashMap的好习惯,并且以下初始化工作正常:

Map<String,String> x = new HashMap<String,String>();

为什么我在初始化嵌套的哈希映射时出现类型不匹配错误:

Map<String,Map<String,String>> y = new HashMap<String,HashMap<String,String>>();

声明有问题,请将上面的声明替换为下面的行。

Map<String,HashMap<String,String>> y = new HashMap<String,HashMap<String,String>>();

如果你看例外,你会得到一个更好的主意。

Type mismatch: cannot convert from HashMap<String,HashMap<String,String>> to Map<String,Map<String,String>>

它与确切的类型匹配。当您给定的类型时,它可能是完全相同的类型。而不是Map<String,String>你使用HashMap<String,String>

如果您想尝试另一件事,请尝试以下行。

Map<String,Map<String,String>> y = new HashMap<String,Map<String,String>>();

最新更新