数组的四个基本特点
其他长度是确定的,数组一旦被创建,它的大小就是不可以改变的
其元素必须是相同类型,不允许出现混合类型
数组中的元素可以是任何数据类型,包括基本类型和引用类型
数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量
数组本身就是对象,java中对象是在堆中的,因此数组无论保存原始类型还是其他对象类型
数组对象本身是在堆中的。
数组边界
下标的合法区间:【0,length-1】,如果越界就会报错:
ArrayIndexOutOfBoundsException : 数组下标越界异常!
小结:
数组是相同数据类型(数据类型可以为任意类型)的有序集合
数组也是对象。数组元素相当于对象的成员变量
数组长度的确定,不可变的。如果越界,则报:ArrayIndexOutOfBounds
数组的使用
foreach 循环
案例
int[] arrays = {1,2,3,4,5};//JDK1.5 ,没有下标//foreach显而易见,没有for循环的繁琐,直接能够把数组的内容给遍历出来//唯一的缺点取不到下标for (int array : arrays) { //foreach的使用方法 System.out.println(array);}总结:有点:foreach可以直接把数组里的内容遍历出来 缺点:取不到数组下标
结果:
数组方法入参
案例,通过循环数组,序号,来得到数组的和,最大值
public static void main(String[] args) { int[] arrays = {1,2,3,4,5}; //打印全部的数组元素 for (int i =0; i
结果:
数组作返回值
案例
public static void main(String[] args) { int[] arrays = {1,2,3,4,5}; //定义数组 printarray(arrays); //调用数组函数 System.out.println("============"); reverse(arrays); //输出反转数组函数// int [] reverse = reverse(arrays); //定义变量reverse// printarray(reverse); //第三种方法的,函数调用 } //打印一个数组 public static void printarray(int[] arrays){ for (int i = 0; i 结果: 多维数组 多维数组可以看成是数组的数组,比如二维数组就是一个特殊的一维数组,其每一个元素都是一个一维数组 二维数组 int a[][] =new int [3][2] 解释:以上二维数组a可以看成一个三行两列数组 int [][] array = {{1,2},{2,3},{4,5},{6,7}};//二维数组/*[4][2]1,2 array[0]3,4 array[1]4,5 array[2]6,7 array[3] */ 思考:多维数组的使用 案例用for循环来遍历出数组 public static void main(String[] args) { int [][] array = {{1,2},{2,3},{4,5},{6,7}}; //二维数组 /* [4][2] 1,2 array[0] 3,4 array[1] 4,5 array[2] 6,7 array[3] */ //用for循环来遍历二位数组2层for循环 for(int i= 0; i 结果: