코틀린에 관한 학습을 기록
조건문 처리(Conditional Expression)
1. if로 처리
1
2
3
|
// 전통적인 방법
var max = a
if (a < b) max = b
|
cs |
1
2
3
4
5
6
|
// else와 함께 사용
var max: Int {
max = a
} else {
max = b
}
|
cs |
1
2
|
// expression 처럼 사용
val max = if (a > b) a else b
|
cs |
1
2
3
4
5
6
7
8
|
// 블록으로 expression 처리
val max = if (a >b) {
print("Choose a")
a
} else {
print("Choose b")
b
}
|
cs |
2. when으로 처리
when은 C의 switch 연산자처럼 사용이 가능하다.
1
2
3
4
5
6
7
|
when (x) {
1 -> print("x == 1")
2 -> print("x == 2")
else -> {
print("x는 1도 2도 아닌경우이다")
}
}
|
cs |
1
2
3
4
5
|
// 다른 값이 같은 처리를 해야한다면
when (x) {
0, 1 -> print("x == 0 or x == 1")
else -> print("다른경우")
}
|
cs |
1
2
3
4
5
6
7
|
// x가 범위에 해당하는 경우, 그리고 그 범위가 아닌 경우에 대해서도 처리가 가능하다.
when(x) {
in 1..10 -> print("x는 범위에 있다")
in validNumbers -> print("x는 배열 안에 포함된다")
!in 10..20 -> print("x는 10~20범위에 해당하지 않는다")
else -> print("x는 위의 케이스를 벗어난다")
}
|
cs |
3. 함수의 결과값으로 바로 처리
만약 함수를 정의하고 그 안에서는 if문으로 분기하는 처리만 포함된다면, 함수의 내부 블록 처리 없이 처리가 가능하다.
1
|
fun max(a: Int, b: Int) = if (a > b) a else b
|
cs |
4. 3항 연산자가 존재하지 않음
kotlin은 if만으로도 3항 연산자와 같은 역할의 처리가 충분히 가능하기 때문에, 별도의 3항연산자를 채택하지 않았다.
참고 URL: http://kotlinlang.org/docs/reference/control-flow.html#if-expression
구체적으로 컴파일하면서 체험하고 싶다면
https://try.kotlinlang.org
에서 학습이 가능하다.
반응형
'[Developer] > Kotlin' 카테고리의 다른 글
Ktor Client로 Kotlin HTTP 통신하기(1/2) (2) | 2021.07.15 |
---|---|
[코틀린 멀티플랫폼] 첫 번째 멀티플랫폼 앱 만들기 (0) | 2021.04.16 |
[코틀린 멀티플랫폼] 시작/초기설정하기 (0) | 2021.04.15 |
코틀린 기본 문법 :: 반복문 표현 (0) | 2018.05.06 |
댓글