[javase學習筆記]-5.3 數組操作中常見問題

這節我們看一下在數組操作中經常出現的兩個小現象.

我們直接看一段代碼吧

class ArrayDemo2 //數組-常見的問題
{
	public static void main(String[] args) 
	{
		int[] arr =new int[3];
		//System.out.println(arr[3]);//編譯的時候不報錯(ArrayIndexOutOfBoundsException),運行時才報錯
		//當訪問到數組中不存在的角標時,就會發生異常.
		//arr = null;
		//System.out.println(arr[0]);//NullPointerException
		//當引用型變量沒有任何實體指向時,還在用其操作實體,就會出現該異常.
		System.out.println(arr);//  [I@139a55 @是分隔符,之前是實體的類型,[表示數組,I表示整型
	}
}
從上面的代碼我們可以看出來我們在對數組的操作時會經常遇到ArrayIndexOutOfBoundsException和NullPointerException這兩個異常.

當訪問到數組中不存在的角標時,就會出現ArrayIndexOutOfBoundsException異常.

當引用型變量沒有任何實體指向時,還在用其操作實體,就會出現NullPointerException異常.

在以後的編程過程中只要看到這兩個異常,我們就能知道是什麼原因了.

最後就說一下最後一句語句的意義:當我們不知道程序中的一個實體是什麼類型時,我們可以直接打印該實體,然後看打印出的字段的@之前的內容,就可以確定實體是什麼類型了,例子中[表示的就是數組,I表示的數組的元素是整型.

發佈了53 篇原創文章 · 獲贊 2 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章