數組異常

1.數組越界異常

每個數組的索引都會有一個範圍,即0~length-1.在訪問數組的元素時,索引不能超過這個範圍,否則程序會報錯。

如下所示:

 public class ArrayDemo06 {
 	public static void main(String[] args) {
 		int[] arr = new int[4]; // 定義一個長度爲4的數組
 		System.out.println("arr[0]=" + arr[4]); // 通過角標4訪問數組元素
 	}
 }

運行結果爲:

運行結果中所提示的錯誤信息是數組越界異常ArrayIndexOutOfBoundsException,出現異常的原因是數組的長度是4,其索引範圍爲0~3,而代碼中使用索引4來訪問元素時超出了數組的索引範圍。

2.空指針異常

在使用變量引用一個數組時,變量必須指向一個有效的數組對象,如果改變量的值爲NULL,則意味着沒有指向任何數組,此時通過該變量訪問數組的元素會出現空指針異常。

如下所示:

 public class ArrayDemo07 {
 	public static void main(String[] args) {
 		int[] arr = new int[3]; // 定義一個長度爲3的數組
 		arr[0] = 5; // 爲數組的第一個元素賦值
 		System.out.println("arr[0]=" + arr[0]); // 訪問數組的元素
 		arr = null; // 將變量arr置爲null
 		System.out.println("arr[0]=" + arr[0]); // 訪問數組的元素
 	}
 }

運行結果爲:

通過運行結果可以看出,代碼4、5行代碼能通過變量arr正常的操作數組,第6行代碼將變量置爲NULL,當第7行代碼再次訪問數組是就會出現空指針異常NullPointerException。

對異常的詳細介紹和理解可以繼續閱讀:Java中的異常以及對異常的處理

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章