public class Grade_If_IfElse { public static void main(String[] args) { int[] arrNumber = {3,7,6,8,1,4}; System.out.print("冒泡排序前:"); printArray(arrNumber);//输出数组元素 bubbleSort(arrNumber);//调用排序方法 System.out.print("冒泡排序后:"); printArray(arrNumber); } //定义输出数组元素方法 public static void printArray(int[] arrNumber){ //循环遍历数组元素 for (int i = 0;i < arrNumber.length;i++){ System.out.print(arrNumber[i]+ "");//输出元素和空格 } System.out.print("\n"); } //定义调用数组排序方法 public static void bubbleSort(int[] arrNumber){ //定义外层循环 for (int i = 0;i< arrNumber.length-1;i++){ //定义内层循环 for (int j = 0;j<arrNumber.length-i-1;j++){ //比较相邻元素 if(arrNumber[j] >arrNumber[j+1]){ //交换元素 int temp = arrNumber[j]; arrNumber[j] = arrNumber[j+1]; arrNumber[j+1] = temp; } //每次结束比较输出数组元素 System.out.print("第"+(i+1)+"轮排序后:"); printArray(arrNumber); } //每轮结束比较输出数组元素 System.out.print("第" +(i+1)+ "轮排序后最终数组元素:"); printArray(arrNumber); } } }
冒泡排序前:376814
第1轮排序后:376814
第1轮排序后:367814
第1轮排序后:367814
第1轮排序后:367184
第1轮排序后:367148
第1轮排序后最终数组元素:367148
第2轮排序后:367148
第2轮排序后:367148
第2轮排序后:361748
第2轮排序后:361478
第2轮排序后最终数组元素:361478
第3轮排序后:361478
第3轮排序后:316478
第3轮排序后:314678
第3轮排序后最终数组元素:314678
第4轮排序后:134678
第4轮排序后:134678
第4轮排序后最终数组元素:134678
第5轮排序后:134678
第5轮排序后最终数组元素:134678
冒泡排序后:134678