• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    해결됨

switch의 기능인건 코틀린에서는 없나요?

23.04.01 10:15 작성 조회수 323

1

fun judgeNumber5(grade: Int) {
    when (grade) {
        3 -> {
            println("A의 권한을 갖습니다")
        }
        2 -> {
            println("B의 권한을 갖습니다")
        }
        else -> {
            println("C의 권한을 갖습니다.")
        }
    }
}
public static void judgeNumber5(int grade) {
        switch (grade) {
            case 3 :
                System.out.println("A의 권한을 갖습니다.");
            case 2 :
                System.out.println("B의 권한을 갖습니다.");
            default:
                System.out.println("C의 권한을 갖습니다.");
        }
    }

이렇게 할 경우에 코틀린은 early return으로 해당 구문만 실행하고 when 절을 나가게 되는데

java의 switch 기능처럼 사용하는 방법이 있을까요?

 

답변 1

답변을 작성해보세요.

1

안녕하세요, yousd179님!! 질문 올려주셔서 감사드립니다! 😊

결론부터 말씀드리자면, 코틀린에서 break 가 없는 when expression은 지원하지 않고 있습니다!!

관련해서 2017년에 https://discuss.kotlinlang.org/t/fall-through-in-when/2540 discussion이 있더라고요! 한 번 읽어보셔도 좋을 것 같습니다~~

감사합니다!!! 🙏🙏

kamser님의 프로필

kamser

질문자

2023.04.02

감사합니다 !! 회사에서 코틀린을 사용해서 자바배우고 바로 코틀린을 공부해야했는데 정말 도움이 많이되고 있습니다 !! 나중에 시간되실때 코틀린 심화도 해주시면 정말 좋을거같아요 !!