【JAVA基础】数组(二)
数组索引越界异常(ArrayIndexOutOfBoundsException):
数组的索引编号从0开始,一直到“数组的长度-1”为止。如果访问数组元素的时候,索引编号并不存在,那么将会发生数组索引越界异常。
原因:索引编号写错了。
解决:修改成为存在的正确索引编号。
public class ArrayDemo03 {public static void main(String[] args) {
int[] array1={1,2,4};
System.out.println(array1[0]);//1
System.out.println(array1[3]);//ArrayIndexOutOfBoundsException
}
}
空指针异常 (NullPointerException)
所有的引用类型变量,都可以赋值为一个null值。但是代表其中什么都没有。
数组必须进行new初始化才能使用其中的元素。如果只是赋值了一个null,没有进行new创建,那么将会发生:空指针异常 NullPointerException
原因:忘了new
解决:补上new
public class ArrayDemo04 {public static void main(String[] args) {
int[] array=null;
array=new int[]{1,3,4}; //如果没有这句话,就会发生NullPointerException
System.out.println(array[0]);
}
}
练习
数组最大值:
public class ArrayDemo05 {public static void main(String[] args) {
int [] array1={1,2,4,5};
arrayMax(array1);
}
public static int arrayMax(int[] array){ //数组作为参数
int max=array[0];
for (int i = 1; i < array.length; i++) {
if (max<array[i]){
max=array[i];
}
}
System.out.println("最大值为:"+max);
return max;
}
}
数组反转(Reverse)
public class ArrayDemo06 {public static void main(String[] args) {
int [] array1={4,5,6,2,7,1,3};
arrayReverse(array1);
for (int i = 0; i < array1.length; i++) {
System.out.println(array1[i]);
}
}
public static int[] arrayReverse(int[] array){ //数组作为参数
for (int min = 0,max=array.length-1; min < max; min++,max--) { //数组翻转操作,需要满足下角标min<max
int temp;
temp=array[min];
array[min]=array[max];
array[max]=temp;
}
return array; //数组作为返回值
}
}
以上是 【JAVA基础】数组(二) 的全部内容, 来源链接: utcz.com/z/393780.html