java学习笔记--java中的基本数组[5]

  java基础很重要, 今天呆家看java视频,顺便总结前几周看的java书籍,做一下简单的总结:1:数组的声明,2:数组的赋值; 3:数组的方法;

  声明一个数组主要有两种方式:

//类型 []数组名字;
//类型 数组名字[];

int []arr;
int arr[];

  定义数组也有两种方式:

//声明有4个内存空间的数组;
int [4];
//声明一个数组长度为4,对应的内容分别问1,2,3,4; int []{1,2,3,4}

  java的数组声明在赋值的时候数组长度就固定了,你不能更改的, 这点需要注意;

  还有一种是声明数组的时候直接赋值:

String []s = {"s0","s1","s2","s3"};

  二维数组的声明:

//直接赋值的创建方式
int [][] = {{1,2},{3,4}};
//先开辟空间的赋值方式
int [][] = new int[2][2];

  

  操作数组:

  数组的方法: 复制数组(拷贝数组),数组排序, 数组查找, 数组填充;

  拷贝数组:ArrayMethodDemo.java

public class ArrayMethodDemo {
    public static void main(String args[]) {
        int arr1[] = {1,2,100,6};
        int arr2[] = {1,1,1,1};    

        System.arraycopy(arr1,0,arr2,0,3);//java有工具方法可以提供数组的复制;
        print( arr2 );
        copy(arr1,0,arr2,0,4); //我们也可以自己写一个复制数组的方法;
    }
    public static void print(int a0[]){
        for(int i = 0; i < a0.length; i++) {
            System.out.println( a0[i] );
        };
    }
    public static void copy (int a0[], int start ,int a1[],int startIndex,int endIndex){
        int len = endIndex - startIndex;
        for(int i = 0; i < len; i ++) {
            a1[startIndex+i] = a0[start+i];    
        };
    }
}

  数组的排序:

public class ArrayMethodDemo {
    public static void main(String args[]) {
        int []arr0 = {10,2,5,1};
        int arr1[] = {1,2,100,6};
        java.util.Arrays.sort( arr0 );//系统提供的sort方法;
        print( arr0 );
        sort( arr1 );//自己写一个sort方法
        print( arr1 );
    }
    public static void print(int a0[]){
        for(int i = 0; i < a0.length; i++) {
            System.out.println( a0[i] );
        };
    }
    public static void sort (int a0[]){
        for(int i = 0; i< a0.length; i++ ) {
            for(int j = 0; j<a0.length; j++ ) {
                if(a0[j] > a0[i]) {
                    int temp = a0[i];
                    a0[i] = a0[j];
                    a0[j] = temp;
                };
            };
        };
    }
}

  数组的填充方法,数组的查找方法, 数组的对比是否相等方法:

public class ArrayMethodDemo {
    public static void main(String args[]) {
        //copy ;
        int []arr0 = {10,2,5,1};
        int arr1[] = {1,2,100,6};
        //数组的对比相等方法;
        System.out.println( java.util.Arrays.equals(arr0, arr1) );
        //s数组的查找方法
        System.out.println( "binarySerch" );
        System.out.println( java.util.Arrays.binarySearch(arr0, 10));
        //********************//
        //数组的填充方法, 注意了,填充只能对位赋值的array有效;
        int arr4[] = new int[2];
        java.util.Arrays.fill(arr4, 0);
        java.util.Arrays.fill(arr4, 0);
        print( arr4 );
        //********************//
    }
    public static void print(int a0[]){
        for(int i = 0; i < a0.length; i++) {
            System.out.println( a0[i] );
        };
    }
}
原文地址:https://www.cnblogs.com/diligenceday/p/4338356.html