疑難排解例外狀況:System.IndexOutOfRangeException
嘗試存取陣列或集合的元素,而該陣列或集合中的索引位於陣列邊界外部或少於零時,就會擲回 IndexOutOfRangeException 例外狀況。
相關秘訣
請確定清單索引的最大值必須小於清單的大小
清單索引的最大值必須小於清單的大小。請確定索引不是負數。
如果索引小於零,就會擲回這個例外狀況。請確定資料的欄位名稱是正確的。
如果提供給 DataView.Sort 屬性的資料欄位名稱無效,可能會擲回這個例外狀況。 如需詳細資訊,請參閱 DataView 類別。
範例
說明
下列範例在索引 i 超出陣列界限 0 至 3 時,使用 Try…Catch 區塊來攔截 IndexOutOfRangeException。 範例會顯示下列資訊:
Element at index 0: 3
Element at index 2: 5
Element at index -1: IndexOutOfRangeException caught
Element at index 4: IndexOutOfRangeException caught
程式碼
Module Module1
Sub Main()
' The first two tests will display the value of the array element.
IndexTest(0)
IndexTest(2)
' The following two calls will display the information that
' an IndexOutOfRangeException was caught.
IndexTest(-1)
IndexTest(4)
End Sub
Sub IndexTest(ByVal i As Integer)
Dim testArray() As Integer = {3, 4, 5, 6}
Console.Write("Element at index {0}: ", i)
Try
Console.WriteLine(testArray(i))
Catch ex As IndexOutOfRangeException
Console.WriteLine("IndexOutOfRangeException caught")
End Try
End Sub
End Module