1 //1.比较数组中,两个相邻的元素,如果第一个数比第二个数大,我们就交换他们的位置
2 //2.每一次比较,都会产生出一个最大,或者最小的数字
3 //3.依次循环,直到结束!
4
5 package array;
6
7 import java.util.Arrays;
8
9 public class ArrayDemo07 {
10 public static void main(String[] args) {
11
12 int[] a = {52,556,4,5,6,99,55,33,645,859478};
13 int[] sort = sort(a);//调用完我们自己写的排序方法以后,返回一个排序后的数组
14 System.out.println(Arrays.toString(sort));
15 }
16 public static int[] sort(int[] array){
17 int temp = 0;//临时变量
18 for (int i = 0; i < array.length-1 ; i++) {//外层循环:判断我们要走多少次
19 boolean flag = false;//通过flag标识位减少没有意义的比较
20 for (int j = 0; j < array.length-1-i ; j++) {//内层循环:判断两个数,如果第一个数比第二个数大,则交换位置
21 if (array[j + 1] > array[j]) {//大到小
22 // if (array[j+1] < array[j] ){//小到大
23 temp = array[j];
24 array[j] = array[j + 1];
25 array[j + 1] = temp;
26 flag = true;
27 }
28 }
29 if(flag == false){
30 break;
31 }
32 }
33 return array;
34 }
35 }