最近学习了一下javase的基础知识,有了一点点的概念,今天就趁着还有一点印象,赶紧练习一下。跟上一篇一样,小程序也是实现一个冒泡排序。

package com.luoanman.test;

public class bSortClass {
    /**
     * 排序
     *
     * @param Numbers
     * @return
     */
    public static int[] bSort(int[] Numbers) {
        int tmp;
        for (int i = 0; i < Numbers.length; i++) {
            for (int j = 0; j < Numbers.length - i - 1; j++) {
                if (Numbers[j] > Numbers[j +1]){
                    tmp = Numbers[j];
                    Numbers[j] = Numbers[j +1];
                    Numbers[j +1] = tmp;
                }

            }
        }
        return Numbers;
    }

    /**
     * 打印
     * @param Numbers
     */
    public static void printNums(int[] Numbers) {
        for (int num : Numbers) {
            System.out.format("%d ", num);
        }
        return;
    }

    public static void main(String args[]){
        int[] Numbers  = {10, 8, 6, 7, 3, 5, 4, 1, 2, 0, 9};
        printNums(bSort(Numbers));
    }
}

运行的结果实现了10个数字从小到大排序的效果

0 1 2 3 4 5 6 7 8 9 10 

在练习的过程中,遇到swap方法的问题,由于java在处理int类型的参数传递时是值传递的方式,无法通过swap方法内部的交换来影响方法外部的值,因此不能够像在PHP里那样写一个简单的swap方法实现值的交换。

标签: java

评论已关闭