Dưới đây là mã của tôi:Looping thông qua các yếu tố trong một mảng ngược
int myArray[]={1,2,3,4,5,6,7,8};
for(int counter=myArray.length; counter > 0;counter--){
System.out.println(myArray[counter]);
}
Tôi muốn in ra mảng theo thứ tự giảm dần, thay vì thứ tự tăng dần (từ yếu tố cuối cùng của mảng để là người đầu tiên) nhưng tôi chỉ bị ném lỗi này:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8
at task1.main(task1.java:14)
Tại sao điều này xảy ra? Tôi đã hy vọng rằng bằng cách sử dụng myArray.length để đặt bộ đếm đến 8, mã sẽ chỉ in ra phần tử thứ 8 của mảng và sau đó tiếp tục in cái trước đó.
Tôi không biết kiểu lập chỉ mục mảng trong Java, nhưng nếu nó giống như trong C, bạn đang cố gắng in phần tử mảng ra khỏi giới hạn mảng trong lần lặp đầu tiên .. – Mallik