如果你只想使用数组,你可以这样做:
创建一个临时(助手)数组,其中将包括到目前为止在tabT
. 然后,在打印该值之前,检查它是否没有出现在辅助数组 (tmp) 中。
例如,如果您在 中有值tabT
,并且您不想多次打印每个值:
int[] tabT = {1,2,3,1,1,2,6,7,2,7,1};
int[] tmp = new int[tabT.length];
boolean flag;
for (int i = 0; i < tabT.length; i++) {
tmp[i] = tabT[i];
flag = true;
for (int j = 0; j < tmp.length; j++)
if (tabT[i] == tmp[j] && i!=j) {
flag = false;
}
if(flag)
System.out.println(tabT[i]);
}
输出:[1,2,3,6,7]
您可以轻松地将这个想法应用到您的程序中,并且每个元素只打印一次:
Cars[] tmp = new Cars[tabT.length]; //Assuming tabT is from type Cars[]
boolean flag = true;
for (int i = 0; i < tabT.length; i++) {
tmp[i] = tabT[i];
if (tabT[i] != null) {
for (int j = 0; j < tmp.length; j++)
if (tabT[i].getCar().equals(tabT[j].getCar()) && i!=j)
flag = false;
if(flag)
System.out.println(tabT[i].getCar());
}
}
这将只打印每辆车(或您正在打印的任何东西)一次。