数组:
内存中的连续空间
数组是一次性定义多个相同类型的变量
Java中一个数组就是一个对象,有属性,没有方法
int[] a; //定义一个数组,变量名就是指向数组首地址的指针
a=new int[10]; //为数组分配空间
a.length; //得到数组的长度
数组创建后有初始值:数字类型为0 布尔类型为false 引用类型为null
String[] 默认值 null
初始化、创建、和声明在同一时间
int[] i = {0,1}; //显示初始化
int[] i = new int[]{0,1}; //注意:这样显示的初始化的时候,new int[] 中括号中必须是空的,不能填数字
Car[] c = {new Car(),new Car()};
数组拷贝
System.arrayCopy(Object src, int srcPos, Object dest, int destPos, int length);
src源数组,srcPos从第几位开始拷贝(数组下标,从0开始),dest目标数组,destPos目标数组放置的起始位置,length,表示要拷贝的长度。拷贝一个数组到另一个数组。
多维数组
1) 有效定义
int[][] i1 = new int[2][3]; (同时给定一维,二维的空间)
int[][] i2 = new int[2][]; (给定一维的空间,二维空间待定,不规则的二维数组)
i2[0] = new int[2],i2[1] = new int[3];
* C++中 int[][] =new int[][3];有效
2) 无效定义
int[][] i1 = new int[][3];
3) 数组长度 ------------数组的属性length(在二维数组中这个属性只代表第一维的长度)
int[] i = new int[5];
int len = i.length; //len = 5;
Student[][] st = new Student[4][6];
len = st.length; //len = 4;
len = st[0].length; //len = 6;