簡體   English   中英

在以下情況下,如何迭代向量的向量並獲得輸出?

[英]How to iterate the vector of vectors and get the output in the below scenario?

我必須獲取每個向量的第一個元素並添加到另一個向量中,並繼續直到mainVector結束

mainVector-> [[1,Allen,2000,10],[2,Joe,3000,20],[3,King,4000,40]] [Vector(矢量)]

輸出應為-> [[1,2,3],[Allen,Joe,King],[2000,3000,4000],[10,20,40]] [向量(向量)]

int i=0;
Vector outputVector = new Vector();
for(int p = 0; p < mainVector.size(); p++)        
{
       Vector second = new Vector();
       for(int h = 0; h < mainVector.size(); h++) 
       {
          eachVector = mainVector.get(h);
          String eachElement = eachVector.get(i);
          second.add(eachElement);
       }
       outputVector.add(second);
    i++;       
}

嘗試這個。

int i = 0;
Vector outputVector = new Vector();
for (int p = 0; p < ((Vector)mainVector.get(0)).size(); p++) {
    Vector second = new Vector();
    for (int h = 0; h < mainVector.size(); h++) {
        Vector eachVector = (Vector)mainVector.get(h);
        Object eachElement = eachVector.get(i);
        second.add(eachElement);
    }
    outputVector.add(second);
    i++;
}

您不需要3個索引變量,因為您具有2維數據結構:

Vector outputVector = new Vector();
for (int i = 0; i < mainVector.size(); i++) {
    outputVector.add(new Vector());
    for (int j = 0; j < mainVector.get(0).size(); j++) {
        ((Vector) outputVector.get(i)).add(mainVector.get(i).get(j));
    }
}

我必須指出,這似乎是Java的老派。 除非您有舊項目,否則請考慮使用Vector<Vector<Object>> outputVector 另外,您可能想使用List因為現在認為 Vector過時

暫無
暫無

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

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