코드의 흐름은 위에서 아래로 진행하지만 흐름을 변경하고자 할 때 제어문 사용
if(조건식) { } else if(조건식) { } else { }
주어진 조건에 따라 코드 수행 여부를 결정하는 구문
val a1:String = if(a3 == 1) {
var a2: String = ""
a2 += "a1은 "
a2 += "1입니다."
a2
} else {
var a2:String = ""
a2 += "a1은 "
a2 += "1이 아닙니다."
a2
}
// a3=1인 경우 → a1 : a1은 1입니다.
// a3=1이 아닌 경우 → a1 : a1은 1이 아닙니다.
println("a1 : $a1")
when(변수 or 수식) {
값 -> 코드
값 -> 코드
else -> 코드
}
수식이나 값의 결과에 따라 수행될 부분 결정하는 구문
val a1 = 3
when(a1){
1, 2 -> println("a1는 1이거나 2입니다")
3, 4 -> println("a1는 3이거나 4입니다") // 코드 실행
5, 6 -> println("a1는 5이거나 6입니다")
else -> println("a1는 1, 2, 3, 4, 5, 6이 아닙니다")
}
val a1 = 5
when(a1){
in 1..3 -> println("a1는 1부터 3사이입니다")
in 4..6 -> println("a1는 4부터 6사이입니다") // 코드 실행 후 break
in 1..6 -> println("a1는 1부터 6사이입니다") // 코드 실행 X
else -> println("a1는 1 ~ 6사이의 숫자가 아닙니다")
}
var setValue = when(a1){
1 -> "1"
2 -> {
println("a1은 $a1입니다.")
"2"
}
else -> "1, 2가 아닙니다."
}
// a1 = 1 → setValue : 1
// a1 = 2 → setValue : 2
// a1 = 3 → setValue : 1, 2가 아닙니다.
println("setValue : $setValue")
값을 관리하는 요소를 이용해 관리하는 값의 개수만큼 코드를 반복하는 구문
for (변수 in 배열) { }
주어진 조건이 만족할 경우 반복하는 구문
while(조건식) { }
주어진 조건이 만족할 경우 반복하는 구문
do {
수행 코드
} while(조건식)
* retrun
* break
* continue