1 public class Test {
2 public static void main(String[] args) {
3 int[] arr = {5, 2, 6, 8, 9, 1};
4 if (arr == null || arr.length <= 2) {
5 return;
6 }
7 for (int end = arr.length - 1; end > 0; end--) {
8 for (int i = 0; i < end; i++) {
9 //冒泡排序的实质就是数组下标 (0,1) (1,2) (2,3)...这样两两进行判断
10 if (arr[i] > arr[i + 1]) {
11 swap(arr, i, i + 1);
12 }
13 }
14 }
15 for (int i = 0; i < arr.length; i++) {
16 System.out.println(arr[i]);
17 }
18 }
19
20 private static void swap(int[] arr, int i, int j) {
21 arr[i] = arr[i] ^ arr[j];
22 arr[j] = arr[i] ^ arr[j];
23 arr[i] = arr[i] ^ arr[j];
24 }
25 }