Scanner sc = new Scanner(System.in);
String input[] = new String[10];
boolean T = True;
for(int i = 0; T; i++){
input[i] = sc.next();
if(input[i].equals("0") T = false;
}
==========================================
Scanner sc = new Scanner(System.in);
String input[] = new String[10];
for(int i = 0; !input[i].equals("0"); i++) input[i] = sc.next();
둘다 "0" 입력받을 때 까지 반복하는 코드인데
첨에는 밑에 코드처럼 for문에 equals()사용해서 반복문 빠져나오려고 했는데
for문에서 Exception in thread "main" java.lang.NullPointerException 오류 뿜더라
그래서 찾다보니깐 위에 코드처럼 boolean타입 변수 선언해서 for문안에 if문사용해서 True, False구분하던데
boolean타입 변수 선언, for문안에 if문 안쓰고
깔끔하게? 하는 방법이 있을까? 혹은 오류 왜 뿜는것?
배열안에 초기화를 안했으니 당연히 null이고...null은 객체가 아니므로 당연히 널포인터 익셉션 도쾅!
배열의 해당 인덱스 슬롯이 초기화가 안돼서 그런거임. 걍 루프문 내에서 break 처리하는게 훨씬 깔끔한듯