본문 바로가기
Language/Java

[JAVA] 에러 String index out of range

by 애기 개발자 2022. 5. 31.
반응형

자바로 문자열을 일부분 끌어다 쓰고 싶을 때

 

자주 쓰는 기능인 substring()을 사용하다 보면 간혹 가다 발생하는 에러다.

 

String index out of range : [숫자]

 

 

위와 같은 에러가 발생하는데

 

이유는 단순하다.

 

잘라야 할 문자열이 정해진 값보다 작아서 발생하는 에러다.

 

String a = "abc";

String b = a.substring(0, 5);

위와 같은 코드를 작성하면

 

a의 길이는 3

 

b에서 자르고자 하는 길이는 0~5

 

고로 에러 발생.

 

해결 방법은

 

  • 문자열의 길이를 미리 체크하거나 (if문을 이용해서)
  • substring으로 잘라주는 값을 수정해주거나
  • 받아오는 값을(위의 경우 a의 값) 잘라줘야 할 문자열 이상으로 반드시 들어오게 하면 된다.

 

반응형

댓글