数组:
1.概念:一组相同类型的数据的组合,也是引用数据类型
2.名称:数组名称不是固定的,与存放的数据的类型有关
-如 数组名称 int[]
3.元素:数组中的每个数据都是这个数组的元素
4.数组的声明与初始化
声明:元素类型[] 变量名;
元素类型 变量名[];--不建议此写法
变量的初始化的时机:2种
(1)声明时直接初始化
(2)先声明,再初始化(使用前初始化)
数组的变量初始化:3种情况
(1)静态初始化(1种)
String[] names = {"A","B"};
int[] nums = {};
(2)动态初始化(两种)
规定数组长度的写法:int[] ages = new int[length];
不规定长度的写法:
int[] ages = new int[]{};
double[] counts = new double[]{1.2,3.14};
5.数组长度及下标
数组长度:变量名.length
数组下标范围: 0 ~ length-1
6.数组元素访问,及赋值
数组元素访问:变量名[index];//index是元素下标
元素的遍历:(从头到尾依次查看)
(1)用for循环遍历
for(int i=0;i<变量名.length;i++){
System.out.println(变量命[i]); }
(2)用Arrays.toString方法
String info = Arrays.toString(数组名);
或System.out.println(Arrays.toString(变量名));//此方法是将数组的元素拼接成字符串.
用Arrays方法前导包:import java.util.Arrays;
数组元素的覆盖:变量名[index] = value;
7.数组间的赋值
就是指变量之间的赋值。通过一个变量对数组的元素进行修改,
那么与之相关的变量对应的数组的元素也会发生变化
8.数组下标越界异常:
java.lang.ArrayIndexOutOfBoundsException
出现的原因:访问数组元素时的下标超出了范围,正确范围:0~length-1
9.数组的复制:
(1)系统复制法
System.arraycopy(src,start1,des,start2,length);
src:源数组,即被复制的数组名
start1:源数组复制的开始下标
des:目标数组,即复制到的数组名
start2:目标数组复制的开始下标
length:复制的长度
(2)工具类提供的复制方法
元素类型[] 变量名=Arrays.copyOf(src,newLength);
src:源数组
newLength:新数组的长度
功能解释:从src的下标为0的元素开始复制,复制到长度为newLength的新数组中
新数组存放元素的开始位置为0