---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ----------------------
一、数组的概念
数组就是一个容器,用来装东西的。
数组的特点:必须是同一种数据类型的集合
数组的好处:可以自动给数组中的元素从0开始编号,便于操作管理这些数据
二、一维数组
格式:数据类型 [] 数组名 = new int[] 或 数据类型 [] 数组名 = {}
例如:int [] arr = new int [3] 或者 int arr [] = new int[3] 或者 int arr [] = {1,2,3,4,5}
System.out.println(arr); 得到的结果是一个哈希值
栈内存和堆内存的区别:
栈内存:存放的是局部变量,当数据使用完后会自动释放
堆内存:存放的是实体,每一个实体都有内存地址值,实体中的变量都有默认值(0或null),实体不使用以后,会在不确定的时间内被JVM回收机制回收
三、数组操作常见问题
问题1:数组角标越界异常(ArrayIndexOutOfBoundsException):是由于访问到了数组中不存在的角标所致。例如:
int[] arr = new int[2];
System.out.println(arr[3]);
问题2:空指针异常(NullPointerException):是由于arr没有指向实体,却在操作实体中的元素导致的。例如:
int[]arr = null;
System.out.println(arr[1]);
四、二维数组
格式:数据类型 [] [] 数组名 = new 数据类型 [] [] 或者 数据类型 [] [] 数组名 = {{},{},{}}
例:int [] [] arr = new int [3] [2] :含义是此数组中包含有三个一维数组,每个一维数组中有两个元素
int [] [] arr = {{1,2,3},{4,5,6},{7,8,9}}:含义是三个一维数组,第一个一维数组中arr[0][1]=1
注:一种特殊定义写法:int[]x,y[]; x是一维数组,y是二维数组。
---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ----------------------
详细请查看:http://edu.csdn.net