sc.nextInt()는 개행을 포함하지 않습니다.
그런데 처음 입력에서 숫자 5를 입력하고 개행을 해야하는데,
이 개행이 nextInt()에서 처리되는 것이 아니라 첫번째 for문에 있는 sc.nextLine()에서 개행 입력을 처리해버립니다.
그리고 다음 입력이 들어가지기 때문에 반복 1번을 잃어버리는 것입니다.
int num = sc.nextInt();
sc.nextLine();
으로 빈 nextLine()을 추가해줌으로써 정수 num 입력시 발생하는 개행을 처리할 수 있습니다.
rizzle4sg 3년 전
입력
5
oxoxoxoxoxo
xoxoxoxo
xoxoxoxo
xoxoxo//를 입력하면
출력 :
oxoxoxoxoxo
xoxoxoxo
xoxoxoxo
xoxoxo// 여기까지 출력 됩니다.
여기서 궁금한점은 스트링배열 사이즈를 num으로 지정했으니까 위처럼 5를 입력한다면 index 0~4까지 입력을 할 수 있어야 한다고 생각하는데
첫 번째 for문에서 입력을 5번이 아닌 4번을 하면 for문이 끝나버립니다.
왜 처음 입력한 num값이 스트링배열의 인덱스 0번째 값에 자동으로 들어가는 것인지 궁금합니다.