簡體   English   中英

Java:具有多個泛型的向量

[英]Java: Vector with multiple generics

是否可以像Vector那樣使用對象並使其具有多個泛型? 我知道創建一個類是可能的,但是普通Java API附帶的其他類(例如Vectors,Stack等)是否可以具有多個泛型?

例如:

Vector<String, Integer> vect = new Vector<String, Integer>();
vect.add("Hello!", 0);

由此,一個索引將具有兩個值,即String和Integer。

提前致謝!!

我不會使用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");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM