카테고리 없음

[Kotlin2-3] IF문

연나연 2023. 12. 28. 16:02

제어문

▶ 프로그램 코드는 위에서 아래로 흘러간다.
▶ 이 흐름을 변경하고자 할 때 사용하는 것이 제어문이다.
▶ 제어문은 분기문과 반복문으로 구분된다
IF문

▶주어진 조건에 따라 작성된 코드 수행 여부를 결정하는 구문.
▶ 주어진 조건식의 결과가 true 인 경우에만 관리하는 코드가 수행된다.
▶ { } 로 묶은 부분을 관리한다.
if (조건식) {
          //코드//
}
    // 조건식의 결과가 true이므로 if 문이 관리하는 코드가 수행된다.
    if(a1 == 10) {
        println("a1은 10입니다.")
    }

    // 조건식의 결과가 false 이므로 if 문이 관리하는 코드가 수행되지 않는다.
    if(a1 == 20) {
        println("a1은 20입니다.")
    }​
if (조건식) {
         //코드//
} else {
        //코드//
}
    // 조건식의 결과가 true 이므로 if 문이 관리하는 코드가 수행되고
    // else 가 관리하는 코드는 수행되지 않는다.
    if(a1 == 10) {
        println("a1은 10입니다.")
    } else{
        println("a1은 10이 아닙니다.")
    }

    // 조건식의 결과가 false 이므로 if 문이 관리하는 코드가 수행되지 않고
    // else 가 관리하는 코드가 수행된다.
    if(a1 == 20) {
        println("a1은 20입니다.")
    } else{
        println("a1은 20이 아닙니다.")
    }​
if (조건식){
        //코드//
} else if (조건식){
             //코드//
} else if (조건식){
             //코드// 
} else {
             //코드//
}

▶위에서 부터 아래 방향으로 조건식들을 수행하다가 true 인 부분을 만나면 그 부분을 수행하고 밖으로 나간다.
▶만약 모든 조건 수식의 결과가 false 일 경우 else 가 있으면 else 부분을 수행하고 else 부분이 없으면 아무것도 수행하지 않는다.
    if(a1 == 0){
        println("a1은 0입니다")
    } else if(a1 == 10){
        println("a1은 10입니다")
    } else if(a1 == 20){
        println("a1은 20입니다")
    } else {
        println("a1은 0, 10, 20이 아닙니다")
    }​
IF문을 활용한 변수 값 설정

▶if 문에 있는 조건식이 true면 첫 번째 값이 반환되여 변수에 저장되고 false 라면 두 번째 값이 반환되어 변수에 저장된다.

EX) val a3:String = if (a2 > 50) "50보다 큽니다" else "50보다 크지 않습니다"
    //조건식의 결과에 따라 변수의 값을 저장한다.
    var a4 = ""
    var a5 = 10

    if(a5 == 10){
        a4 = "10입니다."
    } else {
        a4 = "10이 아닙니다"
    }
    println("a4: $a4")

    // 위의 코드는 아래와 같이 작성할 수 있다
    var a6 = if(a5 == 10) "10 입니다" else "10이 아닙니다"
    println("a6: $a6")​
if 문이 관리하는 코드가 다수의 줄로 구성되어 있다면..

// if 문이 관리하는 코드가 다수의 줄로 구성되어 있다면..
    var a7 = ""
    if(a5 == 10){
        var r1 = 10 + 20
        a7 = "r1은 $r1 입니다"
    } else {
        var r1 = 100 + 200
        a7 = "r1은 $r1 입니다"
    }
    println("a7 : $a7")

    // 위의 코드는 아래와 같이 작성할 수 있다.
    var a9 = if(a5 == 10){
        var r1 = 10 + 20
        "r1은 $r1 입니다"
    } else {
        var r1 = 100 + 200
        "r1은 $r1 입니다"
    }
    println("a7 : $a7")