/** *双重for循环 * 原理是这样的: 第一层循环遍历拿出第一个数据。而后开始了第二层循环, * 第二层循环先拿出来i++后的数据进行和第一层拿到的数据进行对比, * 若是相比后,第一层循环大于第二层循环拿到的数据, * 将第一层的数据和第二层的数据进行交换(小的拿到前面去,而后继续循环对比,直到循环结束) */ public static void main(String[] args) { int[] arr = {5, 1, 18, 2, 45, 31}; for (int i = 0; i < arr.length - 1; i++) { for (int j = i; j < arr.length; j++) { //第一层循环拿到的数据和第二层循环拿到的数据进行对比 if (arr[i] > arr[j]) {//若是第一层的大于第二层的,进行交换数据 int temp = arr[j]; arr[j] = arr[i]; arr[i] = temp; } } } System.out.println(Arrays.toString(arr)); }