java语言之数组-----选择排序

1. 数组的基本知识:数组是用来存储变量的集合

2. 数组的声明格式:元素类型 [] 数组引用变量名 = new 元素类型[元素个数] 

               如: int [] arrary = new int [10]  声明并创建一个具有int类型的10个元素  arrary 是一个含有十个int 类型的元素数组的引用变量

3. 数组初始化:

    int [] arrary = new int [] {1,2,3,4,56,7};

或        int [] arrary = new int [6];

            arrary [0] = 1;............arrary [5] = 7;

或        int [] arrary = {1,2,3,4,56,7};

3. for each 循环 : 不使用下标就可以顺序遍历整个数组

            for ( double u : mylist ) {

          System.out.println (u);

}                        //对mylist中的每个元素进行以下操作

4. 复制数组的三种方法:

    1) 使用循环语句逐个复制数组元素

          如:int arrary1 [] = {1,2,3,4,5,6};  

            int arrary2 [] = new int [arrary1.length];

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

            arrary2 [i] = arrary1 [i]; 

}          

       2)使用System类中的静态方法arraryCopy

    3)使用clone方法复制数组

5. 给方法传递数组

    public static void printArrary(int [] arrary){

      for (int i = 0; i < arrary.length){

      System.out.println(arrary [i]);

  }

}

      public static void main ( String [] args){

      int [] getArrary = {1,2,3,4,5};

        printArrary(getArrary);

}

6. 选择排序法

    先找到数组中最小的的数,然后把它放在数列的第一位。接下来在剩下来的数中找到最小数放在第一个数的后面,以此类推直到仅剩下一个数为止。

      如:

                       class Exerc05{

                              public static void selectSort(int []arrary1){
                                for (int i = 0; i<arrary1.length-1; i++){
                                     for (int j = i + 1; j<arrary1.length; j++){
                                        if (arrary1[i] > arrary1[j]){
                                             int temp = arrary1[i];
                                                 arrary1[i] = arrary1[j];
                                                 arrary1[j] = temp;
                                        }
                                 }
                          }
                }


                      public static void printArrary(int[] arrary3){
                         System.out.print("[");
                                 for (int k = 0; k<arrary3.length; k++){
                                       if (k!= arrary3.length - 1){
                                           System.out.print(arrary3[k] + ",");
                                       }
                                       else
                                         System.out.println(arrary3[k] + "]");
                                }
                       }


             }


                       class Exerc06{
                             public static void main(String[]args){
                                    Exerc05 arr = new Exerc05();

                                       int[] arrary2 = {1,3,6,7,2,9};

                                           //int arr1 = arr.selectSort(arrary2);不能将一个数组赋值给一个变量;编译报错;
                                              //排序前打印
                                                  arr.printArrary(arrary2);
                                                  //System.out.print(arr1);
                                                  arr.selectSort(arrary2);
                                                //排序后打印
                                           arr.printArrary(arrary2);
                                    }
                          }

原文地址:https://www.cnblogs.com/wuW00/p/4591946.html