ArrayIndexOutOfBoundsException
- Android/코딩
- 2016. 2. 20. 17:54
에폴이라는 어플을 제작 중 ArrayIndexOutOfBoundsException 오류를 경험하게 되었습니다.
결론은 Array변수에 데이터가 없는 경우.. 제가 실수한 부분입니다.
저는 169개가 있다고 설정을 해놨는데, 추가를 한 데이터는 168개였습니다.
코드로 설명을 드리겠습니다.
int index = (int) (Math.random() * 169);
int res = C_GRUP[index];
iv.setImageResource(res);
위 코드는 169개의 데이터중에 하나를 뽑아서 iv라는 이미지뷰에 출력하게 하는 코드입니다.
public static final int C_GRUP[]= {
R.drawable.c_grup_1, R.drawable.c_grup_2, R.drawable.c_grup_3, R.drawable.c_grup_4, R.drawable.c_grup_5,
R.drawable.c_grup_166, R.drawable.c_grup_167, R.drawable.c_grup_168, R.drawable.c_grup_169
};
요 코드가 총 169개의 코드를 입력해 놓은 코드인데 너무 길어서 중간에 잘랐습니다.
입력해 놓은 데이터는 168개 였었는데..위에 입력해 놓은 숫자를 169개로 입력을 해 놓으니 오류가 발생했던 이유가 되었네요.
169개를 맞게 입력하니 오류는 발생하지 않았습니다.
반응형
이 글을 공유하기