티스토리 뷰

728x90

 


조건식

• 코드의 흐름이 단순히 위에서 아래로 진행되는 것이 아닌 조건에 따라 분기를 나누거나 등의 흐름을 제어할 수 있는 식.

 

1. if

• if (조건1) {

       동작1

  } else if (조건2) {

       동작2

  } else {

       동작3

  }

• 만약 조건1이 참이라면 동작1 실행, 아니고 조건2가 참이라면 동작2 실행, 모두 아니라면 동작3 실행.

•  if와 else는 1개만 쓸 수 있고, else if는 여러 개 쓸 수 있다.

• else와 else if는 필요하지 않으면 사용하지 않을 수 있다.

var number1: Int = 10
//number1 = 20
//number1 = 30

if (number1 == 10) { // 조건1 : number1이 10인가
    println("10입니다.") // 조건1이 맞다면 실행
} else if (number1 == 20) { // 조건2 : number1이 20인가
    println("20입니다.") // 조건1이 맞지 않고, 조건2가 맞다면 실행
} else {
    println("10, 20 둘 다 아닙니다.") // 조건1, 조건2가 모두 아니라면 실행
}

• 실행 코드가 1줄이라면 { } 생략 가능.

number1 = 20
if (number1 == 10) println("10입니다.")
else if (number1 == 20) println("20입니다.")
else if (number1 == 30) println("30입니다.")
else println("모두 아닙니다.")

 

2. when

• when (조건을 검사할 값) {
       case1 -> {
            동작1
       }
       case2 -> {
            동작2
       }
       else -> {
            동작3
       }

  }

var number4: Int = 5
//number4 = 6
//number4 = 7

when (number4) {
    5 -> {
        println("5입니다.")
    }
    6 -> {
        println("6입니다.")
    }
    else -> {
        println("모르겠습니다.")
    }
}

• 실행 코드가 1줄이라면 각 case의 { } 생략 가능.

when (number4) {
    5 -> println("5입니다.")
    6 -> println("6입니다.")
    else -> println("모르겠습니다.")
}

 

표현과 식

• 표현(~문)

     - 어떤 것을 표현하기 위해서 사용되는 문법적인 요소

     - val, var, Int, Short 등의 키워드

• 식

     - 값을 만들어냄.

     - 10 + 20, A == B

* 코틀린에서 if와 when은 식으로 취급된다.

     - 즉, 값으로 사용할 수 있다.

// if
val NUMBER2: Int = 10 + 20
val NUMBER3: Int = if (NUMBER2 > 30) 40 else 50
println(NUMBER3)

// when
val NUMBER5: Int = 10 + 20
val NUMBER6: Int = when (NUMBER5) {
    20 -> 202020
    30 -> 303030
    else -> 404040
}
println(NUMBER6) // 303030 출력

     - 코틀린이 아닌 다른 언어에서는 조건식이 아니라 조건문일 수 있다.

 

 

 

 

 

 

 

이 글은

패스트 캠퍼스 Android 앱 개발의 정석 with Kotlin 올인원 패키지 Online

강의를 듣고 공부한 내용을 바탕으로 작성되었습니다.

 


728x90

'📱 Android > 💻 Kotlin' 카테고리의 다른 글

[Android/Kotlin] 8. 컬렉션(Collection)  (0) 2022.10.05
[Android/Kotlin] 7. 배열  (0) 2022.10.04
[Android/Kotlin] 5. 함수  (0) 2022.10.04
[Android/Kotlin] 4. 연산자  (1) 2022.09.30
[Android/Kotlin] 3. Null  (1) 2022.09.30
댓글
공지사항