数组

66 阅读3分钟

数组可以存放多个同一类型的数据,数组也是一种数据类型,是引用类型,数组就是一组数据。

使用方式一:动态初始化

语法:

数据类型[] 数组名 = new 数据类型[长度大小];

数据类型 数组名[] = new 数据类型[长度大小];

// 动态初始化一个数组,长度为10
int[] arr = new int[10];

数组可以先声明后赋值,为赋值的数组它的默认值为null【空指针】

// 定义了一个数组,此时arr的值为null
int[] arr;
// 为arr赋值,并明确长度为10
arr = new int[10];

使用方式二:静态初始化

语法:

数据类型[] 数组名 = {元素1,元素2,元素3,......,元素10};

// 定义arr数组,并明确了长度与数组的元素
int[] arr = {1,2,3,4,5,6};
// 等价于动态初始化的语句,如下
int[] arr = new int[6];
arr[0] = 1;
arr[1] = 2;
// 省略...
arr[5] = 6;

数组使用细节及注意事项

1、数组是多个相同类型数据的组合,实现对这些数据的统一管理;

2、数组中的类型可以是任意数据类型,可以是基本类型和引用类型,但是不能混用;

3、数组创建后,如果没有赋值,有默认值:int 0,short 0,byte 0,long 0,float 0.0,double 0.0,char \u0000,boolean false,String null;

4、使用数组的步骤:1.声明数组并开辟空间。2.给数组各个元素赋值。3.使用数组;

5、数组的下标是从0开始的;

6、数组小标必须在指定范围内使用,否则报:下标越界异常,比如int[] arr = new int[5];有效下标为0~4;

7、数组属于引用类型,数组型数据是对象(object)

数组赋值机制

1、基本数据类型赋值,这个值就是具体的数据,而且相互不影响;例如:int n1 = 10; int n2 = n1;

2、数组在默认情况下是引用传递,赋的值是地址;int [] arr1 = {1,2,3}; int[] arr2 = arr1; 此时arr2将arr1的地址值复制了过来,那么arr1与arr2的地址是相同的,当任意一方发生变化,相互间都有影响;

二维数组的使用

使用方法一:动态初始化

语法:

类型类型[][] 数组名 = new 数据类型[长度大小][长度大小];

// 定义一个int类型的数组,数组名为arr,长度为3,其中子元素的长度也为3
int[][] arr = new int[3][3];

二维数组使用细节和注意事项

1、一维数组的声明方式有:int[] x 或 int x[];

2、二维数组的声明方式有:int[][] x 或者 int x[][];

3、二维数组实际上是由多个一维数组组成的,他的各个一维数组的长度可以相同,也可以不相同,比如:map[][]是一个二维数组,map[][] = {{1,2},{3,4,5}}; 由map[0] 是一个含有两个元素的一维数组,map[1] 是一个含有三个元素的一维数组组成,我们也称为列数不等二维数组;