一、数组简介
一、特点:
1、 数组本身是引用数据类型,它可以存储任何数据类型,也就是基本数据类型,引用数据类型。
2、 创建数组对象会在内存区域内分配一块连续的内存空间,数组名中的引用是这块内存空间的首地址。
3、 数组的长度一旦确定,就不能改变。
4、 通过下标调用指定位置的元素。
二、内存分配
int[] array = {1,3,5,23,25,37,123}
二、一维数组
没有初始化,则默认值为如下表。
类型 | 默认值 |
---|---|
byte | 0 |
short | 0 |
int | 0 |
long | 0L |
float | 0.0F |
double | 0.0 |
boolean | false |
char | 0或’\u0000’ (表示为空) |
引用数据类型 | null |
一、静态初始化
在定义数组的同时为数组分配内存空间和赋值。
//非简化版
int[] arr1 = new int[]{1,2,3};
//简化版
int[] arr2 = {1,2,3};
二、动态初始化
将数组的声明且为数组分配内存空间和赋值操作分离开来。
int[] arr1 = new int[3];
arr1[0] = 1;
arr1[1] = 2;
arr1[2] = 3;
三、二维数组
一、介绍:
1、 二维数组可以认为是一维数组的一维数组,像是一张二维表。
2、 第一个参数为一维数组个数,第二个参数为一维数组的长度,也可以不设置第二个参数。
int[][] arr = {{1},{1,2},{1,2,3}};
二、二维数组的初始化
1、动态初始化:
int[][] arr1 = new int[2][]; //必须设置第一个参数
int[][] arr2 = new int[2][2];
arr1[0] = new int[]{1,2,3};
arr1[1] = new int[]{1,2};
2、静态初始化:
//简化版
int[][] arr1 = {{1},{1,2},{1,2,3}};
//非简化版
int[][] arr2 = new int[][]{{1},{1,2},{1,2,3}};