【JAVA基础】数组(二)

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

回到顶部