조건문
- 특정한 조건에 따라 실행을 달리하고자 할 때 사용.
- 종류 : if, when
- 조건문 if
if( 조건식1 ) {
실행문 → 조건식이 참이면 실행문이 실행되는 코드영역
} else if( 조건식2 ) {
실행문 → 조건식1이 거짓이고, 조건식2가 참일 경우 실행되는 코드영역
} esle {
실행문 → 조건식1과 조건식 2가 모두 거짓일 경우 실행되는 코드영역
}
- if문의 조건식에는 비교연산자 ( == ,< ,>, <=, >=, !=)와 논리연산자(&&, ||, !)를 사용한 조건식만 사용가능하며, 조건식의 결과는 Boolean 타이인 true와 false로 나타난다.
* 논리 연산자
&& -> (논리곱) 두 항이 모두 true일 때만 true반환, 이외에는 false
|| -> (논리합) 두 항중에 하나의 항이라도 true이면 true 반환, 모두 false일 때만 false 반환
! -> (부정단항연산자) true를 false로 false를 true로 바꿈 ex) !(2>1) → 결과값 false
- 변수에 직접 if문 사용하기
var a = 5
var b = 3
var bigger = if(a>b) a else b
- if의 마지막 값을 반환값으로 사용하기
var a = 5
var b = 3
var bigger = if(a>b) {
a = a - b
a }
- 조건문 when
- java의 switch와 비슷함. switch문은 if문의 연산식에서 사용되는 비교 연산자 중에 ==만을 사용하여 같은 값인지를 비교.
- Kotlin의 when = switch의 사용법 + if문의 범위 비교기능
when(parameter) {
비교값1 -> {
실행코드 // parameter로 넣은 변수값이 비교값1과 같다면 실행된다.
}
비교값2 -> {
실행코드 // parameter로 넣은 변수값이 비교값 2와 같다면 실행된다.
}
}
fun testWhen() {
var time = 9
when(time) {
8 -> {
Toast.makeText(this,"현재시각은 8시 입니다.", Toast.LENGTH_SHORT).show()
}
9 -> {
Toast.makeText(this,"현재시각은 9시 입니다.", Toast.LENGTH_SHORT).show()
}
}
}
fun testWhenComma(){
var now = 9
when(now){
8,9 -> {
Toast.makeText(this,"현재시각은 8시 혹은 9시 입니다.", Toast.LENGTH_SHORT).show()
}
else -> {
Toast.makeText(this,"현재시각은 8시 혹은 9시가 아닙니다.", Toast.LENGTH_SHORT).show()
}
}
}
fun testWhenCompare(){
var ageOfPeace = 25
when(ageOfPeace) {
in 10..19 -> {
Toast.makeText(this,"피쓰는 10대입니다.", Toast.LENGTH_SHORT).show()
}
!in 10..19 -> {
Toast.makeText(this,"피쓰는 10대가 아닙니다.", Toast.LENGTH_SHORT).show()
}
else -> {
Toast.makeText(this,"피쓰의 나이를 모릅니다.", Toast.LENGTH_SHORT).show()
}
}
}
▶ 범위가 넙고 특정할 수 없을 경우에는 if문을 사용하고, 범위가 제한뒤고 값도 특정할 수 있는 경우에는 when을 사용하는 것이 바람직하다.
'차근차근 코틀린' 카테고리의 다른 글
| 차근차근 코틀린(7) - 설계 (0) | 2020.09.08 |
|---|---|
| 차근차근 Kotlin(5) - 함수 (0) | 2020.09.06 |
| 차근차근 Kotlin(4) - 반복문 for, while (0) | 2020.09.06 |
| 차근차근 Kotlin(3) - Array, Collection (0) | 2020.09.04 |
| 차근차근 Kotlin(1) - 변수, Naming Convention (0) | 2020.09.03 |