【发布时间】:2018-03-16 00:00:26
【问题描述】:
public class ArrayTest{
public static void main(String[] args) {
int array[] = {32,3,3,4,5,6,88,98,9,9,9,9,9,9,1,2,3,4,5,6,4,3,7,7,8,8,88,88};
for(int i= 0;i<array.length-1;i++){
for(int j=i+1;j<array.length;j++){
if((array[i])==(array[j]) && (i != j)){
System.out.println("element occuring twice are:" + array[j]);
}
}
}
}
}
这个程序工作正常,但是当我编译它时,它会一次又一次地打印值或更多它只是打印 5...等等....这是我想要做的。但是这个程序的行为不是那样的,所以我在这里缺少什么。
您的帮助将不胜感激。 问候!
【问题讨论】:
-
阅读“break”声明。
-
我认为即使是“休息”也无济于事。 OP 必须记住所有以前的重复项,这将超出“简单循环”imo。不过,它可以通过地图实现。
-
为什么你认为你的代码应该做你想做的事?您的代码有什么具体问题?正如目前所写的那样,您的问题要求有人为您编写代码并且不属于 SO。
-
如果你只能使用循环:当你发现一个你认为是重复的值时,从 0 循环到
i-1,检查它是否包含与array[i]相同的值。如果是,则您已经打印了该号码,因此您无需再次打印。