1.什么是数组?数组的定义有哪几种格式?
数组是同一种数据类型数据的集合,并且这个集合大小是固定的。
数组的定义有两种格式:
数据类型[] 数组名;
数据类型 数组名[];
2.什么时候使用动态赋值?什么时候使用静态赋值?
当不能确定数组中的数据时,使用动态赋值。
当已经确定数组中的数据时,使用静态赋值。
动态初始化:
//定义时同时赋值
int[] arr = new int[5];
//先定义后赋值
int[] arr2;
arr2 = new int[5];
静态初始化
标准格式:
//定义时同时赋值
int[] arr = new int[]{1,2,3,4,5};
//先定义后赋值
int[] arr;
arr = new int[]{1,2,3,4,5};
省略格式:
//定义时同时赋值,不可先定义后赋值
int[] arr = {1,2,3,4,5};
3.堆中存放的是什么?栈中存放的是什么?
堆中存放的是为new出来的对象开辟的空间
栈中存放的是方法和变量
4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
数组越界异常时因为访问超出数组索引值的范围
没有对引用数据类型的数组进行赋初值,因为引用数据类型的默认初始值为null,
没有指向任何空间,进行调用的话,就会出现数组空指针异常。 |