public static void main(String[] args) {
int[] a = {124, 1, 9, 38, 79, 66, 12, 99, 125}; //定义数组
int[] sort = sort(a); //利用冒泡排序后,返回排序后的数组
System.out.println("该数组按降序排后为:"+Arrays.toString(a)); //输出排序后的数组
Scanner scanner = new Scanner(System.in); //创建一个接受用户键盘的对象
System.out.println("请输入一个整数"); //提示用户输入自己需要确定的整数
int b = scanner.nextInt();
boolean flag =false; //通过flag判断该整数是否存在于该数组中
for(int i = 0; i < a.length-1; i++) { //对数组进行遍历,查看用户输入的整数是否存在
if (a[i] == b) {
flag = true;
break;
}
if(flag){ //判断如果存在该整数,则输出存在否则不存在
System.out.println("该整数存在于该数组中");
break;
}else{
System.out.println("该整数不存在于该数组中");
break;
}
}
scanner.close(); //程序关闭
}
public static int[] sort(int[]array) {
int temp = 0; //定义一个中间变量
//外层循环,判断循环多少次
for (int i = 0; i < array.length - 1; i++) {
//内层循环,因为每排序一次就会找出一个最大值和最小值,就减少了一次循环,所以j < arrays.length-i-1。
for (int j = 0; j < array.length - 1 - i; j++) {
if(array[j+1]>array[j]){ //两两比较,数大则交换位置
temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
}
}
return array;
}
}
这个代码有问题,出现的结果让我无法理解,麻烦各位帮助我看一下哪儿有问题