概念:
数组是一个存储多个元素的容器,在内存中占有一块连续的空间,数组中的元素只能是一种数据类型,每一个位置都有索引进行标识,索引的位置是从0开始;
数组的初始化:
数组有两种初始化方法:
1、动态初始化:动态初始化在开始只能指定数组的长度,由系统为数组分配初始值;
2、静态初始化:静态初始化正在开始时就要指定数组中每个元素的值,长度就是元素的个数;
动态初始化:
动态初始化的语句格式:数据类型[ ] 数组名 = new 数据类型[元素的个数],当然还有一种写法格式:数据类型 数组名[ ] = new 数据类型[元素的个数] 例:
int[] arr = new int[3];
int arr1[] = new int[4];
静态初始化:
静态初始化的语句格式:数据类型[ ] 数组名 = new 数据类型[]{元素的值},当然还有一种写法格式:数据类型 数组名[ ] = new 数据类型[]{元素的值} 例:
int[] arr = new int[]{1,2,3};
int arr1[] = new int[]{1,2,3,4};
Java的程序运行是由JVM保证的,每一个Java程序相当于一个独立的进程,JVM在运行的时候,会将内存划分为5个部分: 栈: 存放的都是局部变量和方法的调用 堆: 存放的都是new出来的东西,但凡今后在代码中看到new,就会出现在堆内存中 方法区 本地方法区(和系统相关) 寄存器(给CPU使用)
其中数组的定义就用到了栈和堆,下面时关于数组的动态初始化的内存图