일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 웹 브라우저 전쟁
- 웹브라우저 수용도
- 크롤링
- 자바 예외
- 함수 선언
- html
- 예제
- 페이지분석
- 숫자 형식
- SQL입문
- 우아한테크
- 배열 예제
- 예외
- 생성자
- HTML역사
- 크롤링 오류
- R1C3
- SQL
- 자바 오류
- 데이터베이스
- 숫자형식오류
- 자바
- 함수
- DoitSQL입문
- Doit입문SQL
- 배열 3요소
- DoitSQL
- dbms
- DoIt
- 키-값 데이터베이스
Archives
- Today
- Total
프로그래밍
[자바 오류] java.lang.ArrayIndexOutOfBoundsException 본문
728x90
반응형
오류코드
public static void main(String[] args) {
int[] data = new int[4];
data[0]=5;
data[1]=2;
data[2]=3;
data[3]=100;
for(int i=0; i<5; i++)
{
System.out.println("음료"+(i+1)+"은 "+data[i]+"개 있습니다.");
}
}
오류 메세지
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index 4 out of bounds for length 4
at day03/class01.Test03.main(Test03.java:16)
java.lang.ArrayIndexOutOfBoundsException (배열인덱스 벗어남 오류)
배열에 존재하지 않는 인덱스를 참조하려 했기 때문에 발생하는 오류이다
크기가 n인 배열은 인덱스 0부터 인덱스 n-1까지임을 유의해야 한다
해결
배열의 크기만큼 반복하도록 수정
public static void main(String[] args) {
int[] data = new int[4];
data[0]=5;
data[1]=2;
data[2]=3;
data[3]=100;
//5에서 data.length로 수정
for(int i=0; i<data.length; i++)
{
System.out.println("음료"+(i+1)+"은 "+data[i]+"개 있습니다.");
}
}
728x90
반응형
'오류' 카테고리의 다른 글
Comments