자바 Index 1 out of bounds for length 1 오류 질문입니다.

조회수 27959회

12345678 1 lee1 010-1231-5678 // 11345678 2 lee2 010-1232-5678 ...... 이런문자가 있는 파일을 읽어드려서 객체로 구분한후 그 객체를 파일로 저장하는 예제입니다.

근데 여기서 num , grade , name 과 tel_number 를 구분을 해서 객체로 저장을 해야하는데


for(int i = 1; (line = br.readLine()) != null; i++) {
            System.out.println(line);
            //String str = null;
            String[] a = line.split("\n");
            for(int x =0; a[x] != null ; x++)//오류 발생 부분 {
                    String[] b = a[x].split(" ");

                su.num = b[0];
                su.grade = Integer.parseInt(b[1]);
                su.name = b[2];
                su.tel_number = b[3];
            }

실행을 하니 오류 발생 부분에서

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1 at myPack.p1.Student.main(Student.java:33).

이 오류가 발생을 하는데 배열의 크기를 초과했다는걸 알겠는데 그러면 그 배열의 끝을 어떻게 찾아야 할지 모르겠습니다..

2 답변

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)