조건문
when문
다른 언어에서의 switch문과 동일
파라미터 값 : 기본 타입, 문자열 리터럴, 변수, 연산식
조건식 : 기본 타입, 문자열 리터럴, 변수, 연산식, 범위
val value: Int = 3
val value2: Int = 10
when (value) {
1 -> println() // 기본 리터럴
2/1 -> println() // 연산식
value2 -> println() // 변수
3, 5 -> println() // 콤마로 구분해서 사용
in 5..7 -> println() // 범위 값
!in 8..9 -> println()
null -> println()
else -> println()
}
파라미터 없이 사용
val value: Int = 4
when {
value == null -> println()
else -> println()
}
null을 가질 수 있는 파라미터 사용
val value: Int? = null
when (value) {
null -> println()
else -> println()
}
변수의 값으로 사용
val value:Boolean? = null
val num:Int = when (value) {
true -> 1
false -> 2
else -> 3
}
반복문
For문
for (i in 1..5) print(i)
// 하행 반복
for (i in 5 downTo 1) print(i)
// step
for (i in 1..5 step 2) print(i)
ForEach문
fun main() {
val nums = arrayListOf(1, 2, 3, 4, 5)
// 명시적으로 i 변수에 값 지정
nums.forEach { i ->
println("${i}")
}
// 암묵적으로 it 키워드 변수 사용
nums.forEach {
println(it)
}
}
for문과 다르게 forEach문은 continue와 break를 사용할 수 없음
foreach문에서 continue를 사용하기 위해서는 return@forEach,
break를 걸고 싶을 경우 return@run을 사용
fun main() {
val nums = arrayListOf(1, 2, 3, 4, 5)
run {
nums.forEach {
println(it)
if (it == 3) return@run
}
}
nums.forEach {
println(it)
if (it == 3) return@forEach
}
}
'Android' 카테고리의 다른 글
DataStore (2) | 2023.12.06 |
---|---|
Hilt (2) | 2023.12.05 |
[Kotlin] 코틀린 기본 문법 (2) (0) | 2022.08.10 |
[Kotlin] 코틀린 기본 문법 (1) (0) | 2022.08.09 |
[Android] Activity란? (0) | 2022.08.09 |