数组是一种数据类型(引用类型)
相同数据类型元素集合
定义
长度一但定义好无法改变
int[] arr = new int[5];//声明整型数组arr,包含5个元素,每个元素都是int型,默认值为0
初始化----初始化数组中的元素
int[] arr = new int[5];
int[] arr = {2,3,6};
int[] arr = new int[]{2,3,6};
访问
1)通过(数组名.length)可以取数组的长度(元素个数)//arr.length
2)通过下标/索引来访问数组中的元素//下标从0开始到length-1
遍历----for循环遍历
1)数组的复制
1.1)System.arraycopy()方法 //灵活性好,复制数组超出长度会异常
定义
public static native void arraycopy(Object src, int srcPos, Object dest, int destPos, int length);
可以看到,它是一个静态本地方法,由虚拟机实现,效率自然比用java一个个复制高。
方法含义
从源数组src取元素,范围为下标srcPos到srcPos+length-1,取出共length个元素,
存放到目标数组中,存放位置为下标destPos到destPos+length-1。
1.2)Arrays.copyOf(original,newLength) //灵活性差,
public static int[] copyOf([] original, int newLength)
//int[] a = {10,20,30,40,50};
//a = Arrays.copyOf(a,a.length+1);//数组的扩容,创建一个更大的新数组,并将数据复制进去