目录
一、使用方式 1-动态初始化
①先声明数组
② 创建数组
③分配方式
二、使用方式 2-静态初始化(直接在声明的同时初始化{ } )
三、数组使用注意事项和细节
四、数组两种初始化方式都是将内存空间分配到堆上面的
一、使用方式 1-动态初始化
①先声明数组
语法:数据类型 数组名[ ]; 也可以 数据类型[ ] 数组名;
int a[ ]; 或者 int[ ] a;
② 创建数组
语法: 数组名=new 数据类型[大小];
a=new int[10];
③分配方式
(1) 第一种动态分配方式
double scores[] = new double[5];
(2) 第 2 种动态分配方式, 先声明数组,再 new 分配空间
double scores[] ; //声明数组, 这时 scores 是 null
scores = new double[5]; // 分配内存空间,可以存放数据
二、使用方式 2-静态初始化(直接在声明的同时初始化{ } )
①初始化数组
语法:数据类型 数组名[ ]={元素值,元素值......}
int a[ ]={2,5,8},
如果知道数组有多少元素,具体值上面的用法相当于:
int a[ ] = new int[3];
a[0]=2; a[1]=2; a[2]=8;
三、数组使用注意事项和细节
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) 数组下标必须在指定范围内使用,否则报:下标越界异常,比如
四、数组两种初始化方式都是将内存空间分配到堆上面的
数组的名字只是引用了堆上的开辟空间的地址而已,而且一旦初始化数组,数组长度就固定了,不允许在改变,除非重新初始化;
Java的数组不是在栈区或堆区中,而是在Java虚拟机(JVM)的堆区中分配内存。无论是静态数组还是动态数组,在Java中都是通过new关键字来动态地分配内存空间,因此数组在堆中分配。
栈区是用于保存方法调用时的局部变量、方法参数、返回地址等的内存区域。在Java中,基本类型和对象引用变量都可以存在栈中。但是,Java中的数组不是一种基本类型或对象引用变量,因此不会存储在栈区中。