1. 程式人生 > 程式設計 >Java陣列索引異常產生及解決方案

Java陣列索引異常產生及解決方案

這篇文章主要介紹了Java陣列索引異常產生及解決方案,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

通過索引查詢陣列值

public class DemoArrayException {
  public static void main(String[] args) {
    int[] array = {0,1,2,3};

    int element = DemoArrayException.getElement(array,4);
  }

  public static int getElement(int[] array,int index) {
    return array[index];
  }
}

很容易知道,陣列array的元素個數是4個,不過索引值是從0開始的,所以最大索引是3。

其中,getElement方法是獲取陣列指定索引位置的值的。

執行程式,丟擲錯誤

ArrayIndexOutOfBoundsException: 4

開始分析

這裡通過getElement()方法,訪問了array陣列的4索引,這個時候,JVM就會檢測到程式中出現異常。JVM檢測出異常,它就會根據異常產生的原因,建立一個異常物件ArrayIndexOutOfBoundsException("4"),這個異常物件包含了內容、原因、位置。接著,JVM就會訪問getElement方法,發現該方法中沒有處理邏輯(try...catch),這時候,JVM就會把異常物件ArrayIndexOutOfBoundsException("4")丟擲給方法的呼叫者main方法來處理這個異常。

main方法接收到JVM丟擲的異常物件ArrayIndexOutOfBoundsException("4"),而main方法也沒有處理邏輯(try...catch),於是繼續把物件丟擲給main方法的呼叫者JVM處理。

JVM接收到main方法拋回來的異常物件後,會把異常物件的內容、原因、位置以紅色字型列印在控制檯。然後JVM會終止當前正在執行的Java程式。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。