嵌套的循环说明需要

时间:2016-03-27 18:32:34

标签: for-loop methods

基本上,在这个程序中,我被指示创建一个随机数组,然后通过使用for循环的冒泡排序将它们从最小到最大排序。经过一系列的反复试验,我的伙伴和我能够弄清楚,但我只是回顾一下我的代码,老实说,这很难理解......我不太熟悉使用嵌套循环,所以如果有人能解释这个方法是如何工作的,那就太棒了。更具体地说,值ji代表什么。

public void sort() {

    int val = 0;
    for(int i = 0; i < myArray.length; i++) {

        for(int j = 1; j < (myArray.length - i); j++) {

             if(myArray[j-1] > myArray[j]) {

                 val = myArray[j-1];
                 myArray[j-1] = myArray[j];
                 myArray[j] = val;
             }
        }
    }
}

非常感谢任何答案,谢谢伙计们/加尔斯!

1 个答案:

答案 0 :(得分:0)

ij很短,除了表示您在数组中的索引之外没有其他内在含义。第一个for循环是为了对数组中的多个项重复第二个循环和排序方法。第二个循环进行排序。

if(myArray[j-1] > myArray[j]) { // Checks if the index `j` in the array is less than the one before it.
    val = myArray[j-1]; // Temporarily stores the greater value.
    myArray[j-1] = myArray[j]; // Swap the numbers.
    myArray[j] = val; // Swap the numbers.
}