📜  Java中的数组声明(单维和多维)(1)

📅  最后修改于: 2023-12-03 14:42:57.722000             🧑  作者: Mango

Java中的数组声明

在Java中,数组是一种特殊的对象,可以用来保存同类型的多个元素。本文将介绍Java中的数组声明以及如何初始化和访问数组。

单维数组声明

声明单维数组的语法如下:

type[] arrayName;

其中,type代表数组元素的类型,arrayName是数组的名称。例如,下面的代码声明一个保存整数的数组:

int[] numbers;
多维数组声明

Java中的多维数组可以看做是数组的数组。例如,一个二维数组的元素可以通过行和列两个下标来访问。声明多维数组的语法如下:

type[][] arrayName;

其中,type代表数组元素的类型,arrayName是数组的名称。例如,下面的代码声明一个保存整数的二维数组:

int[][] matrix;
数组的初始化

在声明数组之后,需要对数组进行初始化。一维数组的初始化可以使用以下两种方式:

  1. 静态初始化:在声明数组的同时为数组赋初值。语法如下:

    type[] arrayName = {value1, value2, ..., valueN};
    

    例如,下面的代码声明一个保存整数的数组并进行静态初始化:

    int[] numbers = {1, 2, 3, 4, 5};
    
  2. 动态初始化:在声明数组的时候只指定数组的长度,不为数组赋初值。之后可以使用赋值语句为数组元素赋值。语法如下:

    type[] arrayName = new type[length];
    

    例如,下面的代码声明一个长度为5的保存整数的数组并进行动态初始化:

    int[] numbers = new int[5];
    numbers[0] = 1;
    numbers[1] = 2;
    numbers[2] = 3;
    numbers[3] = 4;
    numbers[4] = 5;
    

多维数组的初始化可以使用以下两种方式:

  1. 静态初始化:在声明数组的同时为数组赋初值。语法如下:

    type[][] arrayName = {{value11, value12, ..., value1N}, {value21, value22, ..., value2N}, ..., {valueM1, valueM2, ..., valueMN}};
    

    例如,下面的代码声明一个3行4列的保存整数的二维数组并进行静态初始化:

    int[][] matrix = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}};
    
  2. 动态初始化:在声明数组的时候只指定数组的长度,不为数组赋初值。之后可以使用赋值语句为数组元素赋值。语法如下:

    type[][] arrayName = new type[length1][length2];
    

    例如,下面的代码声明一个3行4列的保存整数的二维数组并进行动态初始化:

    int[][] matrix = new int[3][4];
    matrix[0][0] = 1;
    matrix[0][1] = 2;
    matrix[0][2] = 3;
    matrix[0][3] = 4;
    matrix[1][0] = 5;
    matrix[1][1] = 6;
    matrix[1][2] = 7;
    matrix[1][3] = 8;
    matrix[2][0] = 9;
    matrix[2][1] = 10;
    matrix[2][2] = 11;
    matrix[2][3] = 12;
    
访问数组元素

访问数组元素需要使用下标。一维数组的下标从0开始,到数组长度减1结束。例如,下面的代码访问一个保存整数的数组的第3个元素:

int[] numbers = {1, 2, 3, 4, 5};
int third = numbers[2]; // third的值为3

多维数组的下标由多个数字组成,每个数字代表一个维度的下标。例如,下面的代码访问一个保存整数的二维数组的第2行第3列元素:

int[][] matrix = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}};
int element = matrix[1][2]; // element的值为7

以上就是Java中数组声明的相关内容,希望对读者有所帮助。