一.数组: 1.定义: (1)数组就是一个变量,用于将相同数据类型的数据储存在内存中 (2)数组中的每一个数据元素都属于统一数据类型 2.基本要素: (1)标识符: 和变量一样,在计算机中,数组也要有一个名称,称为标识符,用于区分不同的数组 (2)数组元素: 当给出数组名称,即数组标识符后,要向数组中存放数据,这些数据就称为数组元素 (3)数组下标: 在数组中为了正确地得到数组的元素,需要对它们进行编号,这样计算机才能去存取,这个编号就称为数组下标 (4)元素类型: 存储在数组中的数组元素应该是同一数据类型 3.总结: (1)数组只有一个名称,即标识符 (2)数组元素在数组里顺序排列编号,该编号即为数组下标 (3)数组中的每个元素都可以通过下标来访问 (4)数组的大小(长度)是数组可容纳元素的最大数量, >定义一个数组的同时也定义了它的大小 >如果数组已满但是还继续向数组中存储数据的话,程序就会出错,这称为数组越界 4.使用数组步骤与语法: (1)声明数组: 数据类型[] 数组名; 或者 数据类型 数组名[]; (2)分配空间: 数组名 = new 数据类型[数组长度]; 合并:数据类型[] 数组名 = new 数据类型[数组长度]; (3)赋值: 数组名[下标值]; 数据类型[] 数组名 = {值1,值2,值3,......,值n}; (4)对数据进行处理: 注:数组一经创建,其长度(数组中包含元素的数目)是不可改变的,如果越界访问(即数组下标超过0至数组长度-1的范围),程序会报错 因此,当我们需要使用数组长度时,一般用"数组名.length;"方式 5.常见错误: (1)数组下标 数组下标从0开始,而不是从1开始 (2)数组访问越界 如果访问数组元素时指定的下标小于0,或者大于等于数组的长度,都会出现数组下标越界异常 (3)排错方法: 增加数组长度或删除超出数组下标范围的语句 6.数组的排序: 语法: Arrays.sort(数组名); 对数组进行升序排序(从小到大) 拓展:Arrays.toString();在输出语句内输出整个数组 7.数组的插入算法(难点): (1)定义一个长度为原数组长度+1的数组 (2)将旧数组的值赋值给新数组 (3)找到新增值的插入位置 (4)元素后移(倒着移,将前一位赋值给后一位)空出要插入的位置 (5)给要插入的位置(已空出)赋值
二.演示:
public class Job_010 {
public static void main(String[] args) {
Scanner bdqn = new Scanner(System.in);
String[] a = new String[] { "Island", "Ocean", "Pretty", "Sun" };
System.out.print("插入前的数组为:");
for (int i = 0; i < a.length; i++) {
System.out.print(a[i] + "\t");
}
System.out.print("\n请输入歌曲名称:");
String b = bdqn.next();
String[] newa = new String[a.length + 1];
for (int j = 0; j < a.length; j++) {
newa[j] = a[j];
}
newa[newa.length - 1] = b;
Arrays.sort(newa);
System.out.print("插入后的数组为:");
for (int t = 0; t < newa.length; t++) {
System.out.print(newa[t] + "\t");
}
}
}
演示结果: