问题解析
这道题的思路就是由第一位数开始,逐个与后面的数进行比较,当比较过程中得到相同数时输出该数即可。
实现代码
public static void main(String[] args) {
int[] arr ={1, 2, 3, 3, 4, 5};
for (int i = 0; i < arr.length ; i++) {
for (int j = 0; j < i; j++) {
if (Objects.equals(arr[i], arr[j])) {
System.out.println(arr[i]);
}
}
}
}
基础代码如上所示,如果希望能在输出结果后跳出所有循环,可以考虑将外层循环的判定条件加一个布尔类型的标志,如果想退出循环就改变这个标志并 break 出内层循环,改进代码如下:
改进版本
public static void main(String[] args) {
int[] arr ={1, 2, 3, 3, 4, 5};
boolean flag = false;
for (int i = 0; i < arr.length && !flag; i++) {
for (int j = 0; j < i; j++) {
if (Objects.equals(arr[i], arr[j])) {
System.out.println(arr[i]);
flag = true;
break;
}
}
}
}