jdk 1.5中泛型中的默认地图

时间:2011-09-13 02:54:45

标签: java

我希望默认Map使用所有HashMaps。 key可以是String,integer或任何数据类型 值可以是String,Integer ..任何数据类型。

如何在jdk1.5中使用Map。

1 个答案:

答案 0 :(得分:0)

从版本1.5开始Java language includes Generics作为向各种集合类添加类型安全性的方法。这意味着您必须使用“尖括号”表示法声明集合将存储的类型,例如Collection<String>

另请注意,Map typeinterfaceHashMap type是具体类,因此通常将变量声明为接口类型,并将包含的实例声明为特定类。这样,您可以改变对实现类的想法,而无需更改数据结构的访问方式。例如:

Map<Object,Object> m = new HashMap<Object,Object>();

请注意,您也可以选择不使用类型参数化,但编译器可能会警告您。此外,您可以使用?通配符来实现类似的效果:

Map m2 = new HashMap();
Map<?,?> m3 = new HashMap<?,?>();

您还可以在此上下文中使用extends关键字来实现更精细的类型控制:

Map<? extends Object, ? extends Number> m4 =
    new HashMap<String, Integer>();