Đi đến nội dung
Ngoại lệ JavaLỗi
ArrayIndexOutOfBoundsException

ArrayIndexOutOfBoundsException

Một mảng được truy cập với chỉ số âm hoặc lớn hơn hoặc bằng độ dài mảng.

jvmandroidspring

Nguyên nhân gây ra lỗi này

Chỉ số dùng để truy cập mảng nằm ngoài phạm vi hợp lệ [0, array.length - 1]. Điều này có thể xảy ra trong vòng lặp với lỗi lệch một đơn vị, khi dùng đầu vào người dùng làm chỉ số, hoặc khi mảng ngắn hơn dự kiến.

Cách sửa

Kiểm tra độ dài mảng trước khi truy cập phần tử. Sửa giới hạn vòng lặp để dùng < array.length thay vì <= array.length. Xác thực đầu vào người dùng trước khi dùng làm chỉ số.

Ví dụ

int[] arr = {1, 2};
arr[5]; // AIOOBE
Tài liệu chính thức

Mã lỗi liên quan