💙 들어가며
메뉴를 선택하면 해당되는 코드를 실행해주는
게임을 만들어보자🥰
할 수 있다! 아자아자!
✏️ 메뉴게임 만들기 1
Q. 다음과 같은 결과를 출력해보세요.
1을 입력하면 계속 메뉴를 선택하고
9를 누르면 종료가 되는 프로그램을 만들어보세요.
------------------------------
메뉴를 선택하시오.
1. 계속 2. 종료
------------------------------
더보기
/*
* 문제12: 다음과 같은 결과를 출력해보세요.
* 1을 입력하면 계속 메뉴를 선택하고 9를 누르면 종료가 되는 프로그램을 만들어보세요.
* 풀이날짜: 230621
*
*/
{
Scanner scan = new Scanner(System.in);
END: while(true) {
System.out.println("메뉴를 선택하시오.");
System.out.println("1. 계속 9. 종료");
int input = scan.nextInt();
switch(input) {
case 1:{
System.out.println("------------------");
System.out.println("계속합니다.");
System.out.println("------------------");
break;
}//case_1 end
case 9:{
System.out.println("------------------");
System.out.println("종료합니다.");
System.out.println("------------------");
break END;
}//case_9 end
default:{
System.out.println("------------------");
System.out.println("1 또는 9를 입력하세요.");
System.out.println("------------------");
}//default end
}//switch end
}//while_1 end
scan.close();
} // 지역화 (문제12)
💙 배운점
1.
switch~case를 이용하면 선택된 입력값을 활용해
필요한 부분만을 실행하게 만들어 줄 수 있다.
그리고 그 switch~case를 while(true)라는 무한루프에 넣으면
계속해서 메뉴를 선택하게 하는 게임을 만들 수 있다.
2.
case뒤에 오는 1이나 9는 System.in을 통해 입력받는 값이다.
때문에 해당되지 않는 다른 값을 넣으면 원하는 case를 실행시킬 수 없다.
3.
각 case 끝에 break를 하지 않으면 밑에 있는 case까지 모두 실행한다.
❌ 잘못된 흐름
입력값으로 1만 넣어도 case 9와 default까지 모두 실행되어버림
case 1:
case 9:
dafault:
⭕ 올바른 흐름
입력값으로 1을 받은 경우에만 실행
case 1:
break;
입력값으로 9를 받은 경우에만 실행
case 9:
break;
1과 9가 아닌 다른 모든 입력값을 받은 경우에 실행
default:
(★break가 없어도 이 다음이 switch의 끝이기 때문에 switch가 끝남★)
4.
메뉴라고 하면 바로 switch~case를 떠올리자.
발전시키면 훨씬 다양한 게임을 만들 수 있겠다!