Kotlin 제어문
Kotlin 제어문
프로그램 코드는 위에서 아래로 흘러간다.
IF 문
주어진 조건에 따라 작성된 코드 수행 여부를 결정하는 구문. 위에서 아래로 흘러가는 코드의 흐름을 뛰어 넘거나 변경하려고 할 때 사용한다.
val a1:int = 10
// 기본 IF 문 : IF 문의 조건식 (변수의 값) 이 true 인 경우에만 내부의 코드가 실행 된다.
if ( a == 10 ) {
println ("a1은 10입니다.")
}
IF ELSE 문
// 기본 IF 문 : IF 문의 조건식 (변수의 값) 이 true 인 경우에만 내부의 코드가 실행 된다.
if ( a == 10 ) {
println ("a1은 10입니다.")
} else { // 조건식이 만족하지 않을 경우 수행 됨.
println ("a1은 10이 아닙니다.")
}
ELSE IF 문
// 기본 IF 문 : IF 문의 조건식 (변수의 값) 이 true 인 경우에만 내부의 코드가 실행 된다.
if ( a == 10 ) {
println ("a1은 10입니다.")
} else if ( a > 5 ) { // 조건식이 만족하지 않을 경우 조건을 다시 따짐.
println ("a1은 10이 아니고, 5보다 큽니다.")
}
&&
모든 조건을 만족함을 확인할 때 사용하는 연산자. 두 조건 모두 true 여야 true.
if ( a == 10 && b == 20 ) {
println ("a은 10이고, b는 20입니다.")
}
||
주어진 조건 중 하나만 만족하면 될 경우 사용합니다. 둘 중 하나만 true 일 경우 true.
if ( a == 10 || b == 20 ) {
println ("a가 10이거나, b가 20 이거나")
}
IF 문을 활용한 변수 값 세팅
var a:String = ""
var b:Int = 10
if ( b == 10 ) {
a = "10입니다."
} else {
a = "10이 아닙니다."
}
println("a : $a")
var c:String = if ( b == 10) "10입니다" else "10이 아닙니다."
여러줄로 사용해야 하는 IF 문을 한 줄로 사용이 가능하다.
Kotlin ? 연산자 ( 삼항 연산자 ), ternary operator
var d:String = (b == 10) ? "10입니다" : "10이 아닙니다"
Kotlin 에서 조건부 연산자 (삼항 연산자) "?" , ":" 을 사용할 수 없다. 사용할 경우
Kotlin: Unexpected tokens (use ';' to separate expressions on the same line)
에러가 발생하게 된다.
코틀린 공식 문서에 아래와 같이 나와 있다.
If expressionIn Kotlin, if is an expression: it returns a value. Therefore, there is no ternary operator (condition ? then : else) because ordinary if works fine in this role.
대신 위의 예처럼 그냥 if / else 로 사용하면 된다.
댓글
댓글 쓰기