Error

[Java Error] java.lang.IndexOutOfBoundsException 해결법

WOOOOJI 2023. 3. 20. 23:01
IndexOutOfBoundsException
배열의 범위를 벗어난 인덱스에 접근하여서 발생합니다.


    int[] arr = {1,2,3,4,5,6,7,8};
    int a = arr[9];

 

위 코드에서 배열은 총 길이가 8입니다. 하지만 인덱싱 개념으로는 7까지 존재합니다. 그런데 밑에서 배열의 9번째 값을 꺼낼려고 시도합니다. 바로 이 순간 IndexOutOfBoundsException 이 발생하게 됩니다 :(

 

 


보통 많이 하는 실수...

        for(int i = 0; i <= 8; i++){
            arr[i];
        }

아마 프로그래밍을 접한지 얼마 안됬을때 제일 많이 하는 실수일거 같습니다. i 반복의 종료시점이 INDEX범위를 벗어납니다.

1~8까지의 숫자가 있다면 인덱스는 0~7까지 존재합니다. 하지만 1~8까지 있으니까 8이 될때를 종료시점으로 해야겠다! 라는 실수를 처음에 많이 할 수 있습니다. i < 8 과 같이 코드를 수정해줘야 합니다.

 

 

 

 

 


오늘도 슬기로운 코딩생활 하시길 바라며,
궁금하신점이나 잘못기재된 점에 대한 피드백은 언제나 환영입니다 :)
728x90