亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

什么是IndexOutOfRangeException / ArgumentOutOfRange

什么是IndexOutOfRangeException / ArgumentOutOfRange

回首憶惘然 2019-05-21 15:13:26
什么是IndexOutOfRangeException / ArgumentOutOfRange我有一些代碼,當它執行時,它拋出一個IndexOutOfRangeException,說,指數數組的邊界之外。這是什么意思,我能做些什么呢?根據使用的類別,它也可以 ArgumentOutOfRangeExceptionmscorlib.dll中出現“System.ArgumentOutOfRangeException”類型的異常但未在用戶代碼中處理附加信息:索引超出范圍。必須是非負數且小于集合的大小。
查看完整描述

4 回答

?
www說

TA貢獻1775條經驗 獲得超8個贊

關于Index out of bound of exception的簡單解釋是:

試想一下火車的艙室是D1,D2,D3。一名乘客來到火車,他有D4的機票。現在會發生什么。乘客想進入一個不存在的隔間,所以很明顯會出現問題。

相同的場景:每當我們嘗試訪問數組列表等時,我們只能訪問數組中的現有索引。array[0]并且array[1]存在。如果我們嘗試訪問array[3],實際上并不存在,那么將出現索引超出范圍的異常。


查看完整回答
反對 回復 2019-05-21
?
喵喔喔

TA貢獻1735條經驗 獲得超5個贊

從非常長的完全接受的答案的一方面來看,IndexOutOfRangeException與許多其他異常類型相比,有一個重點,那就是:

通常存在復雜的程序狀態,可能難以在代碼中的特定點控制,例如DB連接斷開,因此無法檢索輸入的數據等......這種問題通常會導致某種類型的異常必須冒泡到更高的水平,因為它發生的地方在那時無法處理它。

IndexOutOfRangeException通常不同之處在于,在大多數情況下,在引發異常時檢查它是非常簡單的。通常這種異常會被某些代碼拋出,這些代碼可以很容易地在它發生的地方處理問題 - 只需檢查數組的實際長度即可。您不希望通過更高級處理此異常來“修復”此問題 - 而是確保它不會在第一個實例中拋出 - 在大多數情況下通過檢查數組長度很容易。

另一種說法是,由于真正缺乏對輸入或程序狀態的控制,可能會出現其他異常,但IndexOutOfRangeException通常只是導頻(程序員)錯誤。


查看完整回答
反對 回復 2019-05-21
  • 4 回答
  • 0 關注
  • 4403 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號