数组定义方式
数组是定长的
指定长度,不明确具体值
动态初始化,具有默认值,在使用时再动态指定值
元素类型[] 数组名 = new 元素类型[元素个数/数组长度]
指定每个角标位上的具体值
静态初始化
元素类型[] 数组名 = new 元素类型[ ]{1,2,3...} --->new 会在堆中开辟空间
元素类型[] 数组名 = {1,2,3...} ---> 内存空间开辟在哪儿呢?数组为引用类型,应该也是分配在堆中
如,创建一个数组,包含10个元素,脚本从0到9,默认初始值都为0
int[] arr = new int[10];
int[] arr = new int[] {1,2,3};
int[] arr = {1,2,3};
应用:
比如有一些数据需要存储,需要先将其值都初始化为0
如果使用List来存放,则
List<Double> list = new ArrayList<Double>();
for(int i=0;i<100;i++)
list.add(0.0);
循环100次初始化的过程是否可以优化呢?
可以直接用一个double数组来存储数据,避免了循环初始化的过程。
因为数组初始化之后,里面的元素值默认就为0.0!
【注意,不要使用Double类型来定义,其默认值为null!】
double[] d = new double[10];
for(double dd : d)
System.out.println(dd);