java数组使用、Arrays类使用 、排序方法

数组使用

数组的基本使用:

package charpter4;

public class ArrayDemo2 {
    public static void main(String[] args) {
        int[] arrays = {1,2,3,4,5};
        printArray(arrays);
        arrays=reverse(arrays);
        printArray(arrays);
    }
    //输出数组
    public static void printArray(int[] arrays){
        for(int x:arrays){
            System.out.print(x+" ");
        }
        System.out.println();
    }
    //翻转数组
    public static int[] reverse(int[] arrays){
        int[] result = new int[arrays.length];
        int i=arrays.length;
        for (int x:arrays){
            result[--i]=x;
        }
        return result;
    }
}

多维数组:

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

Arrays 类

在工具类java.util.Arrays中

package charpter4;

import javafx.scene.control.TableColumn;

import java.sql.SQLOutput;
import java.util.Arrays;

public class ArraysUse {
    public static void main(String[] args) {
        int[] a = {1,4,5,2,3,6};
        //打印数组元素Arrays.toString
        System.out.println(Arrays.toString(a));

        //给数组赋值Arrays.fill()
        Arrays.fill(a,0,1,10);
        System.out.println(Arrays.toString(a));

        //排序方法 Arrays.sort()   由小到大排序
        Arrays.sort(a);
        System.out.println(Arrays.toString(a));

        //比较方法 Arrays.equal()
        System.out.println(Arrays.equals(a,a));

        //查找数组元素,二分查找 已排序 Arrays.binarySearch()
        System.out.println(Arrays.binarySearch(a,10));

        int[] aa = {1,4,5,2,3,6};
        //冒泡排序  两层循环: 外层表示冒泡轮数,内层表示比较
        for(int i=0;i<aa.length;i++)
            for(int j=0;j<aa.length-1-i;j++){
                if(aa[j]>aa[j+1]){
                    aa[j]=aa[j]+aa[j+1];
                    aa[j+1]=aa[j]-aa[j+1];
                    aa[j]=aa[j]-aa[j+1];
                }
            }
        System.out.println(Arrays.toString(aa));
        int[] b = {1,4,5,2,3,6};
        //简单选择排序
        for(int i=0;i<b.length;i++)
            for(int j=i;j<b.length;j++){
                if(b[i]>b[j]){
                    b[i]=b[i]+b[j];
                    b[j]=b[i]-b[j];
                    b[i]=b[i]-b[j];
                }
            }
        System.out.println(Arrays.toString(b));
    }
}

八大排序

  1. 插入排序-直接插入排序
  2. 插入排序-希尔排序
  3. 选择排序-简单选择排序(如上)
  4. 选择排序-堆排序
  5. 交换排序-冒泡排序(如上)
  6. 交换排序-快速排序
  7. 归并排序
  8. 基数排序
posted @ 2022-09-26 15:08  林每天都要努力  阅读(96)  评论(0)    收藏  举报