상세 컨텐츠

본문 제목

[Kotlin] 조건문과 조건식 (If, When, In)

Programming language/Kotlin

by choiDev 2020. 9. 24. 17:07

본문

1. if/else문

fun ifExample(intA: Int, intB: Int): Int {
    if (intA > intB) {
        return intA
    } else {
        return intB
    }
}

 

2. if문 예제2 (if 간단식)

fun ifExample2(intA: Int, intB: Int) = if (intA > intB) intA else intB

 

3. In문 예제

fun rangeExample():Boolean{
    val x = 1
    val y = 9

    return x in 1..y		//x가 1~y 사이에 포함이 되어있으면 true 아니면 false를 반환한다.
}	

 

4. In문 예제2

fun rangeExample2(){
    val list = listOf("a","b","c")

    if(3 !in list.indices){ 		//리스트의 크기가 색인 가능한 인덱스 인지?
        println("색인 불가")
    }else{
        println("색인 가능")
    }
}

 

5. When문 예제 

자바의 switch문과 흡사하게 동작한다.

fun whenExample(): String {
    val any: String = "banana"

    return when (any) {
        "banana","tomato" -> "Good"     //any가 banana혹은 tomato인 경우
        "apple" -> "Normal.."		//any가 apple인 경우
        else ->  "Not Good..."		//any가 위의 경우 중 하나도 해당되지 않은 경우
    }
}

 

6. When문 예제2

fun whenExample2(): String {
    val any: String = "banana"

    return when (true) {
        any.equals("banana") -> "Good"	//any.eqaul의 결과가 true인 경우
        else ->  "Not Good..."		//그 이외인 경우
    }
}

 

7. When문 예제3

fun whenExample3():Unit {
    val target:Int = 11
    val list:List<Int> = listOf(1,10,11)


    when (target) {
        in 1..10 -> println("1..10 !!")  	//1~10 중에 target이 포함되어있다면
        in list -> println("list !!")  		//list 내부 값중에 target이 포함되어있다면
        !in 10..20 -> println("10..20 not !!")  //10~20 중에 target이 포함되어있다면
    }
}

 

8. When문 예제4

fun whenExample4(x:Int) = when(x){
    in 1..10 -> "Good"
    else -> "Not Good"
}

 

예제 URL: ConditinalExample.kt

관련글 더보기