Java 解释这个代码?

Java 解释这个代码?,java,Java,所以我知道这段代码取一个随机的10个数字数组,并将它按从低到高的顺序排列。但它是如何做到的?你能解释一下循环,缓冲区,I和J是什么吗 import java.util.Arrays; public class Divisible { public static void main(String[] args) { int[] array = new int [10]; //generates 10 Random numbers in the range of 1-20

所以我知道这段代码取一个随机的10个数字数组,并将它按从低到高的顺序排列。但它是如何做到的?你能解释一下循环,缓冲区,I和J是什么吗

import java.util.Arrays;

public class Divisible {

public static void main(String[] args) {

    int[] array = new int [10];
    //generates 10 Random numbers in the range of 1-20
    for (int i = 0; i < array.length; i++ ) {
        array[i] = (int)(Math.random()*20 + 1);
    }           
    System.out.println(Arrays.toString(array));

    int buffer = 0;
    for(int i1 = array.length-1; i1 > 0; i1--) {

        for(int j = 0 ; j < i1 ; j++) { 

            if(array[j] > array[j+1]) {

                buffer = array[j];
                array[j] = array[j+1];
                array[j+1] = buffer;
            }
        }
    }

    System.out.println(Arrays.toString(array));
}
} 
导入java.util.array;
公共阶级可分{
公共静态void main(字符串[]args){
int[]数组=新的int[10];
//生成1-20范围内的10个随机数
for(int i=0;i0;i1--){
对于(intj=0;j数组[j+1]){
缓冲区=数组[j];
数组[j]=数组[j+1];
数组[j+1]=缓冲区;
}
}
}
System.out.println(array.toString(array));
}
} 

这是冒泡排序。有关说明,请参阅。

在调试器中单步执行此代码时,是否有不清楚的特定操作?你到底不明白什么?目前,您似乎在网上找到了一些代码,希望我们教您Java,以便您能够理解它。这对于堆栈溢出来说太宽泛了。为什么不编写自己真正理解的代码呢?这段代码看起来像是以稍微不可读的方式编写的冒泡排序。