這裏是你試圖做代碼:
而且程序的輸出是:
[1, 2, 3, 1, 2, 4]
[1, 2, 3, 4]
但我建議你使用列表或數組列表或其他任何數據結構,因爲沒有人在Java中使用矢量這些天。
在代碼中,你需要先檢查一下,如果當前元素存在於集合與否,如果它不存在,那麼只有元素添加到您返回新的向量。
package test;
import java.util.HashSet;
import java.util.Set;
import java.util.Vector;
public class test {
public static void main(String[] args) {
Vector<Integer> vector = new Vector<>();
vector.addElement(1);
vector.addElement(2);
vector.addElement(3);
vector.addElement(1);
vector.addElement(2);
vector.addElement(4);
System.out.println(vector);
vector = removeDuplicates(vector);
System.out.println(vector);
}
static Vector<Integer> removeDuplicates(Vector<Integer> vector) {
Vector<Integer> v = new Vector<>();
Set<Integer> set = new HashSet<Integer>();
for (int i = 0; i < vector.size(); i++) {
if (set.add(vector.elementAt(i))) {
v.addElement(vector.elementAt(i));
}
}
return v;
}
}
'arr.get(我)'... – Maroun
'Vectors'已被棄用,使用'List'。 –
的HashSet不允許重複的元素。你不必檢查條件'if(!set.contains(arr [i]))' – Karan