是否可以采用 Vector 之类的对象并使其具有多个泛型?我知道创建一个类是可能的,但是普通 Java API 附带的其他类(如 Vectors、Stack 等)是否可以具有多个泛型?
例如:
Vector<String, Integer> vect = new Vector<String, Integer>();
vect.add("Hello!", 0);
由此,一个索引将有两个值,一个字符串和整数。
提前致谢!!
我不会使用 Vector,因为您可以使用 List。在您的情况下,您需要使用自定义类,例如
class MyClass {
String s;
int i;
MyClass(String s, int i) {
this.s = s;
this.i = i;
}
}
List<MyClass> list = new ArrayList<MyClass>();
list.add(new MyClass("Hello!", 0));
String s = list.get(0).s;
int i = list.get(0).i;
集合,例如 Vector,只能包含一种类型的对象。您正在尝试存储 2 个对象。创建一个名为 StringIntegerTuple 的类,该类包含对要存储的对象的 2 个引用,然后声明一个 Vector 并存储复合对象。
尽管从语义上讲,您可能想要一个 HashMap
该类Vector
实现了一个可增长的对象数组,我认为您正在寻找地图,java.util.Map<key,value>
地图的实现是HashMap<k,v>
Map<Integer,String> map = new HashMap<Integer,String>();
map.put(1,"str");