Java数组

                                                Java--数组

一、数组
1.概念:数组是有序数据的集合;一个数组里只能存储一种数据类型是数据,而不能存储多种数据类型的元素。
二、一维数组
1.一维数组的声明
数据类型 数组名[]; 或数据类型[] 数组名;

    例如:

    int a1[];     int[] a2;    double b[];     Person[] p1;     String s1[];

2.数组对象的创建:

    1. java中使用关键字new 创建数组对象,语法为:

        数组名 = new 数组元素类型[数组元素个数];

例如:

public class TestArray{
    public static void main(String args[]){
        int[] arr;
        arr = new int[5];
        for(int i=0;i<5;i++){
            arr[i] = i;
            System.out.println(arr[i]);
        }
    }
}

3.元素为引用类型的数据(注意:元素为引用数据类型的数组中的每一个元素都需要实例化)

例如:

public class TestArray{
    public static void main(String args[]){
        Date[] date;
        date = new Date[3];
        for(int i=0; i<3; i++){
            date[i] = new Date(2014,10,25);
            System.out.println(date[i].year+"年,"+date[i].month+"月,"+date[i].day+"日!");
        }
    }
}
class Date{
    int year,month,day;
    public Date(int year,int month,int day){
        this.year = year;
        this.month = month;
        this.day = day;
    }
}

4.数组初始化:

1、动态初始化:

    数组定义与为数组元素分配空间和赋值的操作分开进行。
2.语法:
    数组名=new 数据类型[长度]

例如:

public class TestArray{
    public static void main(String args[]){
        int[] arr = new int[3];        //数组定义
        arr[0]=1;    //数组初始化
        arr[1]=2;
        arr[2]=3;

        Date[] date = new Date[3];    //数组定义
        date[0] = new Date(2014,10,25);        //数组初始化
        date[1] = new Date(2014,10,25);
        date[2] = new Date(2014,10,25);

    }
}
class Date{
    int year,month,day;
    public Date(int year,int month,int day){
        this.year = year;
        this.month = month;
        this.day = day;
    }
}

2、静态初始化

1.在定义数组的同时就为数组元素分配空间并赋值:

    数组名=new 数据类型[]{元素值1,元素值2,元素值3,...,元素n};  或  数据类型 数组名[]={元素值1,元素值2,元素值3,...,元素n}。

例如:

public class TestArray{
    public static void main(String args[]){
        int a[] = {1,2,3};
        Date[] date = {new Date(2014,10,25), new Date(2014,10,26), new Date(2014,10,27)};
    }
}
class Date{
    int year,month,day;
    public Date(int year,int month,int day){
        this.year = year;
        this.month = month;
        this.day = day;
    }
}

三、二维数组(二维数组里的每一个元素都是一个一维数组)

1.声明二维数组

数据类型[][] 数组名;

例如:

int [][]intArr;

2.二维数组的初始化
1.静态初始化:

        数组类型 数组名[][]={{第0行元素值},{第1行元素值},...,{第n行元素值}}

2.动态初始化:

   数组类型[][] 数组名=new 数据类型[数组长度]["{第0行元素值}"长度]

3.使用二维数组
格式:

    数组名[行下标][列下标] 

二维数组完整例子:

public class Lesson{  
    public static void main(String [] args){  

        //二维数组的声明方式:  
        //数据类型 [][] 数组名称 = new 数据类型 [长度][长度] ;  
        //数据类型 [][] 数组名称 = {{123},{456}} ;  

        /* 
        int [][] arr = {{123},{456}};  //定义了两行三列的二维数组并赋值 
        for(int x = 0; x  
        int [][] num = new int [3][3]; //定义了三行三列的二维数组  
        num[0][0] = 1; //给第一行第一个元素赋值  
        num[0][1] = 2; //给第一行第二个元素赋值  
        num[0][2] = 3; //给第一行第三个元素赋值  

        num[1][0] = 4; //给第二行第一个元素赋值  
        num[1][1] = 5; //给第二行第二个元素赋值  
        num[1][2] = 6; //给第二行第三个元素赋值  

        num[2][0] = 7; //给第三行第一个元素赋值  
        num[2][1] = 8; //给第三行第二个元素赋值  
        num[2][2] = 9; //给第三行第三个元素赋值  
        for(int x = 0; x//定位行  
            for(int y = 0; y//定位每行的元素个数  
                System.out.print(num[x][y]);  
            }  
            System.out.println("/n");  
        }  
    }  
}  
//数组值arr[x][y]表示指定的是第x行第y列的值。  
//在使用二维数组对象时,注意length所代表的长度,  
//数组名后直接加上length(如arr.length),所指的是有几行(Row);  
//指定索引后加上length(如arr[0].length),指的是该行所拥有的元素,也就是列(Column)数目。  

你可能感兴趣的:(Java,数组)