我在编码中遇到技术问题。在下面,我定义了向量的向量:

        Vector<Vector<Integer>> uSupVec = new Vector<Vector<Integer>>();
        Vector<Integer> uSup = new Vector<Integer>();
        Boolean isRep = false;
        for (int i = 1; i <numSup ; i++) {
            uSup.clear();
            for (int l = 0; l < i; l++) {
                if (supName[i] == supName[l]) {
                    isRep = true;
                }}
            if (!isRep){uSup.add(i);}
            for (int j = i+1; j < numSup; j++) {
                if (supName[i] == supName[j]) {
                        if (!isRep){uSup.add(j);}
                        }}
            isRep = false;
            uSupVec.add((Vector) uSup);
        }


我的问题是,每当清除uSup向量时,存储在uSupVec中的所有向量都将被清除。在每次迭代中,我想定义一些整数的向量,然后将其存储在向量的向量中,并清除向量以存储新值,然后再次将其存储在向量的向量中。

最佳答案

修改

uSupVec.add((Vector) uSup);




uSupVec.add(new Vector(uSup));

10-06 00:56