조건문 _ if, if-else, switch,

2024. 10. 18. 11:52java

조건문: IF문

 

[ 표현법 ]

if (조건) {

실행할 문장 1

실행할 문장 2

}

→ 조건식의 결과가 true 일 경우 : if문 뒤에 붙은 { } 안의 코드가 수행

→ 조건식의 결과가 false 일 경우: if문 뒤에 붙은 { }를 건너뜀

 

public void method1() {

// if문의 조건식 자리에는 결론적으로 true or false가 들어가야함. (보통 괄호 안에 연산식이나 변수가 들어감)

if(true) {

System.out.println("if문은 조건문중 하나입니다..");

}

 

if(false) {

System.out.println("얘는 죽었다 깨어나도 출력 안됩니다.");

}

}

 

 

 

if-else

 

[ 표현법 ]

if (조건) {

ture일때 실행할 코드  1

ture일때 실행할 코드  2

}

else{

false일때 실행할 코드

}

 

: 불필요한 연산이 줄어듦 → 처리 속도가 향상

 

if-else-if

 

 [ 표현법 ]
if(조건1) {
조건1이 ture일때 실행할 코드
} else if(조건2) {
  조건2가 ture일때 실행할 코드
 } else if(조건3) {
  조건3이 ture일때 실행할 코드
} else if(조건4) {
  조건4가 ture일때 실행할 코드
} else {
앞에서 기술했던 모든 조건들이 false일때 실행할 코드
}

 

public void method2() {

// 사용자에게 나이를 입력받고 어린이 / 청소년 / 성인출력

// 1 ~ 13 : 어린이 입니다.

// 14 ~ 19 : 청소년 입니다.

// 20 ~ : 성인이빈다.

// 0, - : 올바른 나이를 입력해주세요.

 

Scanner sc = new Scanner(System.in);

System.out.println("나이를 입력해주세요 > ");

int age = sc.nextInt();

 

if(age < 0) {

System.out.println("올바른 나이를 입력해주세요.");

} else if(age >= 20) {

System.out.println("성인");

} else if(age >= 14) {

System.out.println("청소년");

} else {

System.out.println("어린이");

}

 

}

 

}

 

 

 

swtich문:

 

switch (조건) {

case 값1 :

실행코드

break;

case 값1 :

실행코드

break;

case 값1 :

실행코드

break;

...

default:

실행코드

}

// 메뉴주문

// 사용자에게 구매할 음식의 이름을 입력받아 각 음식마다의 가격을 출력해줄 것

public void method3() {

 

// 샌드위치, 햄버거, 김밥, 돈까스, 우동, 떡볶이

// 6000, 7000, 4000, 15000, 5000, 8000

 

Scanner sc = new Scanner(System.in);

System.out.println("메뉴를 선택해주세요(샌드위치, 햄버거, 김밥, 돈까스, 우동, 떡볶이) > ");

String menu = sc.nextLine();

 

int price = 0;

switch(menu) {

case "김밥" : price = 4000; break;

case "돈까스" : price = 15000; break;

case "떡볶이" : price = 8000; break;

case "샌드위치" : price = 6000; break;

case "우동" : price = 5000; break;

case "햄버거" : price = 7000; break;

default: System.out.println("해당 메뉴가 존재하지 않습니다.");

return;

} // break를 만나면 빠져나오는 부분

 

System.out.printf("%s의 가격은 %d원 입니다.", menu, price);

 

}