waveofmymind
기록하는 습관
waveofmymind
전체 방문자
오늘
어제
  • 분류 전체보기 (124)
    • 📝 정리 (5)
    • 🌊TIL (9)
    • 💻CS (1)
      • 자료구조 (1)
    • 📙Language (9)
      • ☕Java (6)
      • 🤖Kotlin (3)
    • 🍃Spring (28)
    • 👨🏻‍💻알고리즘 (67)
      • 프로그래머스 (59)
      • 백준 (3)
    • 👷DevOps (4)
      • 🐳Docker (2)
      • 🤵Jenkins (1)

블로그 메뉴

  • 홈
  • Spring
  • Java
  • 알고리즘

공지사항

인기 글

태그

  • 스프링
  • sql
  • 스프링 시큐리티
  • 완전탐색
  • 다이나믹 프로그래밍
  • SpringAOP
  • spring
  • chat GPT
  • BFS
  • 통합테스트
  • 스택
  • kotest
  • JDBC
  • CORS
  • 트랜잭션 전파
  • mybatis
  • AOP
  • spring boot
  • 힙
  • 챗GPT
  • kotlin
  • Spring Security
  • 트랜잭션
  • 코틀린
  • til
  • Connection
  • LeetCode
  • resultset
  • 스프링 부트
  • Open AI

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
waveofmymind

기록하는 습관

[Kotlin] 자바에서의 Switch, 코틀린에서의 When
📙Language/🤖Kotlin

[Kotlin] 자바에서의 Switch, 코틀린에서의 When

2023. 3. 8. 13:32

자바 - Switch

자바에서의 스위치문은 다음과 같이 작성할 수 있다.

public String getGrade(int score) {
	switch (score/10) {
    	
        case 9 : 
        	return "A";
        case 8 :
        	return "B";
        case 7 : 
        	return "C";
       	default:
        	return "D";
        }
}

코틀린 - When(Switch)

코틀린에서는 switch대신 when을 이용하여 제어문을 작성한다.

fun getGrade(score: int): String {
	
    return when (score/10) {
    	9 -> return "A"
        8 -> return "B"
        7 -> return "C"
        else -> return "D"
    }
}

case 대신 ->를 통해 간편하게 작성할 수 있다. 

또한 ..을 이용하면 더 확장할 수 있다.

fun getGrade(score: int): String {
	
    return when (score) {
    	in 90..99 -> return "A"
        in 80..89 -> return "B"
        in 70..79 -> return "C"
        else -> return "D"
    }
}

score가 해당 범위에 속하면(in) 조건에 따라 문자를 리턴한다.

조건문을 묶어서 리턴하는 것은 코틀린의 특징으로, 자바에서는 조건문이 Statement이지만, 코틀린에서는 Expression이기 때문에 조건문 전체를 하나의 값으로 판단한다.

'📙Language > 🤖Kotlin' 카테고리의 다른 글

[Kotlin] 테스트하기 어려운 부분을 분리하기  (0) 2023.05.07
[PUDDY] 코틀린 Kotest로 테스트하기(w. BehaviorSpec)  (0) 2023.04.30
    '📙Language/🤖Kotlin' 카테고리의 다른 글
    • [Kotlin] 테스트하기 어려운 부분을 분리하기
    • [PUDDY] 코틀린 Kotest로 테스트하기(w. BehaviorSpec)
    waveofmymind
    waveofmymind

    티스토리툴바