상황1) 값을 받아서 출력하되, quit 가 입력되면 중단.
- while 문으로 풀이
java.util.Scanner sc = new java.util.Scanner(System.in); while(true) { System.out.println("중지하려면 quit을 입력하세요: "); String keyboard = sc.nextLine(); System.out.println("입력한 값은 " + keyboard+ "입니다."); if(keyboard.equals("quit")) { // 자바에서 문자열 비교시 ==이 아니라 .equals! break; } }
→ 주의할 점은 java에서 문자열 비교시에는
==
이 아니라.equals
를 사용한다는 점이다.
참고자료 ➲ 문자열 == / .equals 비교
- do while 문으로 풀이
java.util.Scanner sc = new java.util.Scanner(System.in); String keyboard; do { System.out.println("중지하려면 quit을 입력하세요: "); keyboard = sc.nextLine(); // keyboard는 do 블럭 안에서 선언되었기 때문에 do 블럭 안에서만 쓸 수 있다. System.out.println("입력한 값은 " + keyboard+ "입니다."); } while(!keyboard.equals("quit")); //quit 아닐때까지 반복해야함
→ 주의할 점은 String keyboard = sc.nextLine(); 을 do {블럭} 안에 선언시 while에서 사용이 안된다.
따라서 do 밖에서 String keyboard를 선언한 뒤에, do 블럭에서는 keyboard 변수에 값을 넣어줘서 사용한다.