【汇总】java中数组的声明、初始化及遍历

java中数组用来存储固定大小的同类型元素

一维数组:

1.数组的声明:

    //声明一维数组,推荐用第一种
        int[] a; 
        int b[];

 

2.数据的初始化:有三种初始化方式

(1).静态初始化

   //静态初始化
        int[] a = {1,2,3}

(2).用new声明,之后分别初始化数组中的每个元素,声明时需指定数组大小

 int[] a = new int[3];
        a[0] = 1;
        a[1] = 2;
        a[2] = 3;

(3).用new声明的同时初始化,这种方式不能指定数组的大小,数组大小由初始化列表中数据个数决定

int[] b = new int[]{1,2,3};

 

3.数组的遍历:有两种方式

(1). for遍历

        System.out.println("for循环遍历数组");
        for (int i=0; i<a.length; i++) {
            System.out.println(a[i]);
        }

(2).foreach遍历

  System.out.println("foreach循环遍历数组");
        for (int i:a) {  //冒号前面的i表示数组的类型,后面的a表示数组
            System.out.println(i);
        }

注:所有已知的类型都可以定义为数组,除了基本数据类型外,还可以声明引用类型(主要是类的对象)的数组。

//以下声明一个Person类对象的数组,并初始化
        Person[] p = new Person[3];
        p[0] = new Person();
        p[1] = new Person();
        p[2] = new Person();

        //用foreach循环遍历数组
        for (Person person:p) {
            System.out.println(person);
        }

 

二维数组:

1.数组的声明:

        //声明二维数组,推荐用第一种
        int[][] a; 
        int b[][];

 

2.数据的初始化:有四种初始化方式

(1).静态初始化

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

(2).用new声明,之后分别初始化数组中的每个元素,声明时指定数组的行数和列数,此种方式声明的数组列数是不可变

        //声明一个3行2列的数组
        int[][] a = new int[3][2];
        //分别给每个元素赋值
        a[0][0] = 1;
        a[0][1] = 2;
        a[1][0] = 3;
        a[1][1] = 4;
        a[2][0] = 5;
        a[2][1] = 6;

(3).用new声明,之后分别初始化数组中的每个元素,声明时只指定数组的行数不指定列数,此种方式声明的数组列数是可变的,但不可只设置列数不设置行数

        String[][] s = new String[2][];
        s[0]=new String[2];   //为第一行设置两列
        s[1]=new String[3];   //为第二行设置三列
        s[0][0] = "张三";
        s[0][1] = "李四";
        s[1][0] = "王五";
        s[1][1] = "赵六";
        s[1][2] = "秦七";

(4).用new声明的同时初始化,这种方式不能指定数组的大小,数组大小由初始化列表中数据个数决定

        int[][] a = new int[][]{{1,2},{3,4,5,6},{7,8,9}};
        String[][] str = new String[][]{{"张三","李四","王五"},{"李白","刘备","张飞"}};

 

3.数组的遍历:有两种方式

(1). for循环

        for (int i=0; i<s.length; i++) {
            for (int j=0; j<s[i].length; j++) {
                System.out.println(s[i][j]);
            }
        }

 

(2). foreach循环

        for (String[] i:s) {
            for (String j:i) {
                System.out.println(j);
            }
        }

 

posted @ 2018-09-17 11:47  那心之所向  阅读(543)  评论(0编辑  收藏  举报