개발 공부/Kotlin / / 2019. 5. 18. 22:59

[Kotlin]코틀린 조건문 when

자바를 아는 입장에서는 switch문과 비슷하게 작동하는 조건문이다.

차이점이 있다면 when이 더 유연하게 쓰기 좋다.

 

예를 들어서 switch의 case에 함수를 넣거나 범위를 지정하는게 어려운 반면

when은 if문을 충분히 대체할 수 있을 정도로 넣을 수 있는 조건이 다양하다.

 

when의 사용방법

when(value){
 case ->
 case2 -> {
 
 }
 else ->
}

 

사용 예 1

when(x){
 in 1..6-> println("x는 1~6범위에 해당하는 숫자다")
 7 ->{
 	println("블럭을 사용해서 여러 줄 입력도 가능")
    val y = x*100
 }
 callmeFun() -> println("함수도 조건에 넣을 수 있음")
 in thisList -> println("collection에 해당값이 있는지도 확인할 수 있음")
 else -> println("else는 필수로 넣어줘야함")
}

사용 예 2

변수값 = when에서 나온 결과 값. 난 이런 표현방식이 처음이라 신기하기도 하고 신선했다.

val classLevel:Char = when(jumsu/10){
	6 -> 'D'
    7 -> 'C'
    8 -> 'B'
    9,10 -> 'A'
    else -> 'F' 
}

 

when은 어떻게 움직이는가?

- when은 한줄한줄 값을 비교하는게 아니라 해당값으로 바로 이동한다.

 

  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유