반응형
Control Flow: if, when, for, while - https://kotlinlang.org/docs/reference/control-flow.html#if-expression
Returns and Jumps / Break and Continue Labels - https://kotlinlang.org/docs/reference/returns.html
조건문
if
var a = 10
if(a > 10) {
print(">10")
} else if(a == 10 {
print("=10")
} else {
print("<10")
}
When
// when 조건이 참이면 해당 구문 실행, 다수의 참 발생 시 먼저 나오는 구문 실행
var a:Any = 1
when(a) {
1 -> println(1)
"1" -> println("1")
is Int -> println("int")
else -> println("else") //어느것도 만족하지 않을 때
} //1
var a:Any = 1
var whenResult = when(a) {
is Int -> "int"
1 -> 1
"1" -> "1"
else -> "else"
}
println(whenResult) // int
반복문
while, do-while
var a = 10
while(a < 10){
println(a++)
} // 1 2 3 ... 10
var a = 10
// 최초 한번 println(a++) 실행 후 while 동작
do{
println(a++)
} while(a < 10)
for
//step 생략 시 1
for(i in 0..10 step 2){
println(i)
} // 0 2 4 6 8 10
for(i in 10 downTo 0 step 2){
println(i)
} // 10 8 6 4 2 0
for(i in 'a'..'d'){
println(i)
} // a b c d
//step 생략 시 1
for(i in 0..10 step 2){
println(i)
} // 0 2 4 6 8 10
for(i in 10 downTo 0 step 2){
println(i)
} // 10 8 6 4 2 0
for(i in 'a'..'d'){
println(i)
} // a b c d
Break and Continue Labels
break, continue
for(i in 1..100){
println(i)
} // 1 2 3 4 ... 100
for (i in 1..100) {
if(i == 5) break
println(i)
} // 1 2 3 4 5
for (i in 1..100) {
if(i == 5) continue // 5를 건너뜀
println(i)
} // 1 2 3 4 6 7 8 ... 100
Break and Continue Labels
// loop@ 라벨을 사용하면 각각의 반복문에 따로 break/continue를 명시할 필요가 없어짐
loop@ for (i in 1..100) {
for (j in 1..100) {
if (i == 1 && j == 5) break@loop
println("$i, $j")
}
} // 1, 1 1, 2 1, 3 1, 4
반응형
'Programming > Kotlin (Android)' 카테고리의 다른 글
[Android] 안드로이드 스튜디오 Vector Asset icon 사용 (0) | 2020.06.02 |
---|---|
[Android] 레이아웃 boder, radius 적용 (0) | 2020.05.27 |
[Kotlin] 상속, 오버라이딩, 추상화 (0) | 2020.04.25 |
[Kotlin] 형 변환 (0) | 2020.04.25 |
[Kotlin] 자료형, 진수 표현(리터럴 상수, Literal constants) (0) | 2020.04.25 |
댓글