java通用地图打印函数
我有一个函数可以打印Map
个对象
public static void printMap(Map<Integer, Integer> map) {
for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
System.out.println( entry.getKey() + " " + entry.getValue() );
}
}
现在,我希望我的函数也能处理Map<String, Integer>
类型的映射。怎么做?我一直想用泛型,希望这个问题有一个好的开始
# 1 楼答案
怀疑你真的需要这个方法——使用
toString()
的Map实例,就是这样# 2 楼答案
您可以编写通用方法,如下代码所示:
建议阅读:
正如@JBNizet在评论中指出的那样,您也可以使用通配符
(?)
而不是类型参数来编写方法,如下所示:# 3 楼答案
可以使用通配符
Map<? extends Object, Integer>
来实现这一点。这一行意味着你可以拥有任何扩展对象类的东西。所以它可以是String
,Integer
,UserDefinedObject
。什么都行