คุณจะหลีกเลี่ยงดัชนีอาร์เรย์จากข้อยกเว้นที่ถูกผูกไว้ได้อย่างไร
คุณจะหลีกเลี่ยงดัชนีอาร์เรย์จากข้อยกเว้นที่ถูกผูกไว้ได้อย่างไร

วีดีโอ: คุณจะหลีกเลี่ยงดัชนีอาร์เรย์จากข้อยกเว้นที่ถูกผูกไว้ได้อย่างไร

วีดีโอ: คุณจะหลีกเลี่ยงดัชนีอาร์เรย์จากข้อยกเว้นที่ถูกผูกไว้ได้อย่างไร
วีดีโอ: ✨The King's Avatar S1 (Quan Zhi Gao Shou) Full Version [MULTI SUB] 2024, เมษายน
Anonim

เพื่อที่จะ ป้องกัน " ดัชนีอาร์เรย์อยู่นอกขอบเขต " ข้อยกเว้น แนวทางปฏิบัติที่ดีที่สุดคือการเริ่มต้น ดัชนี ในลักษณะที่เมื่อทำซ้ำครั้งสุดท้ายของคุณ มันจะตรวจสอบ ธาตุ ที่ ดัชนี i & i-1 แทนที่จะตรวจสอบ i & i+1 (ดูบรรทัดที่ 4 ด้านล่าง)

ต่อจากนั้น อาจมีคนถามว่า ดัชนีอาร์เรย์คืออะไร นอกข้อยกเว้นที่ถูกผูกไว้?

NS ดัชนีอาร์เรย์อยู่นอกขอบเขต ข้อผิดพลาดเป็นกรณีพิเศษของข้อผิดพลาดบัฟเฟอร์ล้น เกิดขึ้นเมื่อ ดัชนี เคยอยู่ อาร์เรย์ รายการเกินค่าที่อนุญาต มันคือพื้นที่ ข้างนอก NS ขอบเขตอาร์เรย์ ซึ่งกำลังได้รับการแก้ไข นั่นเป็นสาเหตุที่สถานการณ์นี้ถือเป็นกรณีของพฤติกรรมที่ไม่ได้กำหนดไว้

รู้ยัง อะไรเป็นสาเหตุของ ArrayIndexOutOfBoundsException หนึ่ง ArrayIndexOutOfBoundsException เป็น ซึ่งก่อให้เกิด โดยพยายามเรียก "กล่อง" ที่ไม่มีอยู่ โดยผ่านดัชนีที่สูงกว่าดัชนีของ "กล่อง" ล่าสุด หรือค่าลบ

  • ชื่อ.
  • เมื่อเข้าถึงเนื้อหาของอาร์เรย์ ตำแหน่งจะเริ่มต้นจาก 0
  • เมื่อคุณวนซ้ำเนื่องจากฉันสามารถน้อยกว่าหรือเท่ากับชื่อได้

อีกอย่างที่คุณควรทราบคือ คุณจะจัดการกับอาร์เรย์ที่ไม่มีข้อยกเว้นใน Java ได้อย่างไร

ดัชนีของ an อาร์เรย์ เป็นค่าจำนวนเต็มที่มีค่าในช่วง [0, n-1] โดยที่ n คือขนาดของ อาร์เรย์ . หากขอค่าลบหรือดัชนีที่มากกว่าหรือเท่ากับขนาดของ อาร์เรย์ ทำแล้ว จาวา พ่น ArrayIndexOutOfBounds ข้อยกเว้น . ซึ่งไม่เหมือนกับ C/C++ ที่ไม่มีดัชนีของ ผูกพัน ตรวจสอบเสร็จแล้ว

ดัชนีสตริงออกจากข้อยกเว้นที่ถูกผูกไว้ใน Java คืออะไร?

แลง StringIndexOutOfBoundsException ถ้า startIndex เป็นค่าลบ หรือใหญ่กว่าความยาวของ สตริง . เมธอดนี้ส่งคืน sub- สตริง ที่ขึ้นต้นด้วยอักขระตามที่กำหนด ดัชนี และขยายไปจนถึงอักขระที่ endIndex-1 ดัชนี . มันพ่น an จาวา.