겉바속촉

제어 흐름 - 조건문 본문

IT 일기 (상반기)/JAVA

제어 흐름 - 조건문

겉바속촉 2022. 5. 26. 10:47
728x90
반응형

 

조건문

 

주어진 조건에 따라 다른 수행문이 실행되도록 프로그래밍하는 것

 

1. if문

if(조건식) {
	수행문;
}

 

2. if-else 문

if(조건식) {
	수행문1;
}
else{
	수행문2;
}

 

 

public class IfExample1 {

	public static void main(String[] args) {

		int age =2;
		
		if(age >=8 ) {
			System.out.println("학교에 다닙니다");
		}
		else {
			System.out.println("학교에 다니지 않습니다");
		}
	}

결과: 학교에 다니지 않습니다

 

 

 

3. if-else if-else 문

하나의 경우에 조건이 여러개에 해당하는 경우

 

if (조건1)
{
	문장1:
}else if (조건2)
{
	문장2:
}else if (조건3)
{
	문장3:
}else
{
	문장4:
}

 

 

	public static void main(String[] args) {

		int age = 9;
		int charge = 0;
		
		if(age < 8) {
			charge = 1000;
			System.out.println("미취학 아동입니다.");
		}
		else if(age < 14) {
			charge = 2000;
			System.out.println("초등학생 입니다.");
		}
		else if(age < 20) {
			charge = 2500;
			System.out.println("중,고등 학생 입니다.");
		}
		else {
			charge = 3000;
			System.out.println("일반인 입니다.");
		}
		
		System.out.println("입장료는 " + charge + "원 입니다.");
	}

결과

초등학생 입니다.
입장료는 2000원 입니다.

 

 

4. 조건문과 조건 연산자

간단한 if-else조건문은 조건연산자로 구현 가능

 

if(a >b)

 max = a;

else

 max =b;

 

한줄로 만드는 것이 가능 --> max = (a > b) ? a : b;

 

 

 

5. switch-case문

조건식의 결과가 정수 또는 문자열의 값이고 그 값에 따라 수행문이 결정될 때

if-else if-else 대신 switch-case 사용가능

 

public static void main(String[] args) {

		int rank =1;
		char medalColor;
		
		switch(rank) {
			case 1: medalColor = 'G';
					break;
			case 2: medalColor = 'S';
					break;
			case 3: medalColor = 'B';
					break;
			case 4: medalColor = 'A';
					break;
			default: medalColor = 'A';
		}
		System.out.println(rank + "등 메달의 색깔은 " + medalColor + "입니다.");
		
	}

1등 메달의 색깔은 G입니다.

 

 

break가 없다면..?

rank는 2등이지만 break를 만나지 못해 case3까지 반복문 실행되어 메달 색깔은 3등의 메달 색깔을 가짐

	public static void main(String[] args) {

		int rank =2;
		char medalColor;
		
		switch(rank) {
			case 1: medalColor = 'G';

			case 2: medalColor = 'S';

			case 3: medalColor = 'B';
					break;
			case 4: medalColor = 'A';
					break;
			default: medalColor = 'A';
		}
		System.out.println(rank + "등 메달의 색깔은 " + medalColor + "입니다.");
		
	}

2등 메달의 색깔은 B입니다.

 

 

 

728x90
반응형

'IT 일기 (상반기) > JAVA' 카테고리의 다른 글

클래스와 객체 - 개념  (0) 2022.05.26
제어 흐름 - continue, break  (0) 2022.05.26
제어 흐름 - 반복문  (0) 2022.05.26
항과 연산자  (0) 2022.05.25
형 변환 type conversion  (0) 2022.05.25