[Shell] case문 사용하기 (Java switch-case문 비교)

PersesTitan·2023년 3월 9일
0

Shell

목록 보기
1/4

shell에서 사용하는 switch-case문을 java의 case문과 비교하여 보겠습니다.

기본 사용법

해당 값과 일치하는 값이 존재한다면 정의된 동작을 실행 시킬 수 있습니다.

shell

case $변수명 in
	0)
    	echo "0 출력"
    	;;
    1)
    	echo "1 출력"
    	;;
esac

java

타입 1

switch (변수명) {
	case 0:
    	System.out.println("0 출력");
        break;
    case 1:
		System.out.println("1 출력");
        break;
}

타입2

switch (변수명) {
    case 0 -> System.out.println("0 출력");
    case 1 -> System.out.println("1 출력");
}

default 사용하기

shell에서는 어느것에도 포함되지 않는다면 *를 사용하여 어느 것도 포함하지 않을때의 동작을 구현할 수 있습니다.

shell

case $변수명 in
	0)
    	echo "0 출력"
    	;;
    1)
    	echo "1 출력"
    	;;
	*)
    	echo "나머지"
        ;;
esac

java

타입 1

switch (변수명) {
	case 0:
    	System.out.println("0 출력");
        break;
    case 1:
		System.out.println("1 출력");
        break;
    default:
    	System.out.println("나머지");
        break;
}

타입2

switch (변수명) {
    case 0 -> System.out.println("0 출력");
    case 1 -> System.out.println("1 출력");
	default -> System.out.println("나머지");
}

조건이 여러개 일때

shell에서도 같은 동작을 하는 조건 값이 여려개일때 사용할 수 있습니다.

shell

case $변수명 in
	0|1)
    	echo "0 또는 1 출력"
    	;;
    2|3)
    	echo "2 또는 3 출력"
    	;;
	*)
    	echo "나머지"
        ;;
esac

java

타입 1

switch (변수명) {
	case 0:
    case 1:
    	System.out.println("0 또는 1 출력");
        break;
	case 2:
    case 3:
    	System.out.println("2 또는 3 출력");
        break;
    default:
    	System.out.println("나머지");
        break;
}

타입2

switch (변수명) {
    case 0, 1 -> System.out.println("0 또는 1 출력");
    case 2, 3 -> System.out.println("2 또는 3 출력");
	default -> System.out.println("나머지");
}
profile
안녕하세요 페르세스 티탄입니다! 부족한 부분이 많이 있겠지만 잘부탁드립니다.

0개의 댓글