today_is
[ control ] if ~ else , switch case 본문
오늘의 목표 >>
조건에 따라 다른 처리를 해야할 때가 있다.
조건을 걸 수 있는 if 와 switch 에 대해서 배워보자 !
Quiz 1 > 최소값 찾기
if 를 이용하여 간단한 조건을 판별한 후에 그에 맞는 결과 처리 해보기
public class Ex01 {
public static void main(String[] args) {
int n1 = 20, n2 = 10, n3 = 3;
int min = n1;
if (min > n2) min = n2;
if (min > n3) min = n3;
System.out.println("최소값 : " + min);
System.out.println();
// 2) 절대값 구하기
int num = -5, abso;
if (num < 0) {
abso = -num;
}
else {
abso = num;
}
System.out.printf("%d의 절대값은 %d\n\n", num, abso);
}
}
Quiz 2 > num 변수의 값에 따라서 다르게 출력해보기
if 와 switch 를 둘다 사용해보고 차이를 느껴보자
public class Ex02 {
public static void main(String[] args) {
int num = 1;
// if의 조건이 모두 특정 변수와 연관, 값의 범위가 아닌 특정 값의 일치여부
if (num == 1) System.out.println("one");
else if (num == 2) System.out.println("two");
else if (num == 3) System.out.println("three");
else System.out.println("other");
System.out.println();
// switch ~ case : 특정 변수의 값에 따라 서로 다른 코드 실행
switch(num) {
case 1: System.out.println("one"); break;
case 2: System.out.println("two"); break;
case 3: System.out.println("three"); break;
default: System.out.println("other"); // break;
}
}
}
- switch ~ case
- if에 비해서 가독성이 좋다
- 일대일 대칭관계 나타내기 용이
- switch 에는 정확한 값의 일치 비교가 가능한 형태로 변수가 와야한다
즉, 근사치를 표현하는 실수는 불가능 !! - switch 에 변수를 포함하는 연산식도 가능하다
study_review >>
일반적으로 더 많은 조건에 대한 처리할 수 있는 것은 if 이다.
switch 는 실수를 이용하여 조건을 걸 수 없기 때문이다.
대신에, 제한적인 상황에서 if 대신 사용할 수 있다.
예를 들어 위의 문제처럼 간단히 1,2,3,4 ... 등의 정수로만 조건을 걸어준다면
switch 가 더 수월하다.
조건이 명확하면서도 조건의 수가 적다면 switch 를 사용하고
좀 더 복잡한 조건이라면 if를 사용하자 !
'java' 카테고리의 다른 글
[ String ] Luhn 알고리즘 & string 함수 (0) | 2023.11.22 |
---|---|
[ loop ] for, while 반복문 (0) | 2023.11.20 |
[ array ] 중복 제거한 난수 생성하기 (로또번호 추첨) (0) | 2023.11.16 |
[ collection ] (0) | 2023.11.16 |
[ java ] 페이징(paging) 알고리즘 (0) | 2023.11.07 |