数组:
数组的定义:
数据类型 [] 数组名称 = new 数据类型[数组大小];
数组的元素的访问:
数组名称[下标] // 下标从0开始, 最大是数组大小-1
数组的大小(元素的个数)
数组名称.length属性
数组的遍历:
一般使用循环完成数组的遍历
课堂练习题:
从控制台接受十门成绩(数组),计算成绩的总分和平均分
数组的特点:
1、数组只能存储一种数据类型
2、数组长度一旦定义,固定下来了
3、数组申请的内存区域是一段连续内存(重要)
栈 (stack)先进后出 (和手枪 弹夹 一样) 一般情况 栈比较小
申请的 全局变量 int i = 10 都在栈中
看见关键字 new xxxx() 在堆中
数组的第二中定义格式
前面讲过定义数组 ,可数组的值都是默认值 ,有时候需要在定义数组时候就把具体的数据存放数组中。
数组中也可以 存储对象
数组的复制:要将一个数组中的内容复制到另外一个中, 你需要将数组的每个元素复制到另外一个数组中。
复制 不同于 =
复制会单独开一个 堆内存
复制数组的3种方法:
1.使用循环语句逐个地复制数组的元素。
2.使用System类中的静态方法arraucopy。
3.使用clone 方法复制数组。
int[] sourceArray = {2,5,6,4,7};
int[] copyArray = new int[sourceArray.length];
for(int i = 0; i <sourArray.length ; i++){
copyArray[i] = copyArray[i];
}
System.arraycopy(需要复制原的数组名 ,需要复制原数组的起始位置 ,复制后的数组名,复制后数组的起始位置 ,数组长度);
Arrays类 需要导入 import java.util.Arrays;
1.方法
从 0 位置开始
Arrays.copyof( 复制源数组 ,复制数组长度);
不影响原数组
可以自定去复制
Arrays.copyOfRange( 复制源数组 ,复制起始位置下标 , 复制截至位置下标);
填充数据; 会将数据填满 整个数组长度
Arrays.fill(数组名 ,数据);
排序
Arrays.sort(数组名);
用 Arrays.toString(数组名); 可以更简洁的去查 数组里内容
//暂时先不复习