코틀린 IndexOutOfBoundsException

김종완·2022년 12월 26일
0

코틀린/스프링을 사용하면서 아래와 같은 에러를 만났다.

nested exception is java.lang.IndexOutOfBoundsException: Index 1 out of bounds for length 1

아래 for 문에서 해당 문제가 발생하였다.

for(i in 0..request.categoryNames.size){
    val category = Category(request.categoryNames[i], null)
    categoryRepo.save(category)
}

위 for 문 같은경우 0 ≤ i ≤ request.categoryNames.size로 되기 때문에 마지막 인덱스값보다 1큰값이 입력되게 된다. 따라서 아래와 같이 for문을 변경하면 해결할 수 있다.

for(i in request.categoryNames.indices){
    val category = Category(request.categoryNames[i], null)
    categoryRepo.save(category)
}
profile
개발에 재미를 느끼며 꾸준히 성장하는 개발자 김종완 입니다.

0개의 댓글