1 数组的概念?有什么特点?
答:数组是指一组数据的集合,数组中的每个数据被称作元素。在数组中可以存放任意类型的元素,但同一个数组里存放的元素类型必须一致。2
2 一维数组的定义格式?
(1)int[] x= new int[5];
(2)int[]x; x=new int[5];
(3)int[]x = new int[]{1,2,3,4,5}
(4)int[]x={1,2,3,4,5}
3 数组操作的两个小问题?
(1) 数组越界异常
每个数组的索引都有一个范围,即0~length-1。在访问数组的元素时,索引不能超出这个范围,否则程序会报错
(2) 空指针异常
在使用变量引用一个数组时,变量必须指向一个有效的数组对象,如果该变量的值为null,则意味着没有指向任何数组,此时通过该变量访问数组的元素会出现空指针异常。
import java.util.Random; class HomeWork { public static void main(String[] args) { /*数组遍历(依次输出数组中的每一个元素)*/ /*一维数组*/ int[] attr ={2,55,32,12,24,12,58}; /*for(int i=0;i<attr.length;i++){ System.out.println(attr[i]); }*/ /*二维数组*/ int[][] attr1 ={{12,32,66},{23,55,86,443,22},{73,27,123}}; /*for(int i =0;i<attr1.length;i++){ for(int j=0;j<attr1[i].length;j++){ System.out.println(attr1[i][j]); } }*/ /*数组获取最值(获取数组中的最大值最小值)*/ /*int max =attr[0]; int min =attr[0]; int max1=attr1[0][0]; int min1=attr1[0][0]; for(int i=0;i<attr.length;i++){ if(attr[i]>max){ max = attr[i]; }else if(attr[i]<min){ min = attr[i]; } } System.out.println("一维数组最大值为"+max); System.out.println("一维数组最小值为"+min); for(int j=0;j<attr1.length;j++){ for(int k=0;k<attr1[j].length;k++){ if(attr1[j][k]>max1){ max1 = attr1[j][k]; }else if(attr1[j][k]<min1){ min1 = attr1[j][k]; } } }System.out.println("二维数组最大值为"+max1); System.out.println("二维数组最小值为"+min1); */ /* 数组元素逆序 (就是把元素对调)*/ /* for(int i=attr.length-1;i>=0;i--){ System.out.println(attr[i]); } for(int j=attr1.length-1;j>=0;j--){ for(int k =attr1[j].length-1;k>=0;k--){ System.out.println(attr1[j][k]); } }*/ }
}