안녕하세요 연봉 1억 개발자 dev-woo 입니다. 코틀린에서의 제어 흐름과 반복문에 대해 알아보겠습니다.
코틀린에서의 기본 제어 흐름
코틀린에서는 자바와 마찬가지로 if, else if, else 를 사용하여 기본적인 제어 흐름을 제어할 수 있습니다. 예를 들어, 다음과 같이 사용할 수 있습니다.
fun main() {
val x = 10
if (x > 5) {
println("x는 5보다 큽니다.")
} else if (x == 5) {
println("x는 5입니다.")
} else {
println("x는 5보다 작습니다.")
}
}
코틀린에서는 조건식 자체가 결과를 반환하기 때문에, 위 코드에서는 괄호나 중괄호가 없어도 됩니다.
코틀린에서의 when 식
코틀린에서는 자바의 switch 문 대신 when 식을 사용하여 복잡한 제어 흐름을 다룰 수 있습니다. when 식은 switch 문과 같은 기능을 수행하지만, 더욱 유연하고 간결한 문법을 제공합니다. 예를 들어, 다음과 같은 코드에서 사용할 수 있습니다.
fun main() {
val x = 2
when (x) {
1 -> println("x는 1입니다.")
2 -> println("x는 2입니다.")
3 -> println("x는 3입니다.")
else -> println("x는 1, 2, 3 중 아무것도 아닙니다.")
}
}
위 코드에서는 when 식으로 x의 값에 따라 출력되는 문자열을 결정합니다. else 절은 모든 옵션이 맞지 않을 때 실행됩니다.
코틀린에서의 for 루프
코틀린에서는 자바와 마찬가지로 for 루프를 사용하여 반복 작업을 수행할 수 있습니다. 다음과 같이 사용할 수 있습니다.
fun main() {
val nums = intArrayOf(1, 2, 3, 4, 5)
for (num in nums) {
println(num)
}
}
위 코드에서는 intArrayOf 함수를 사용하여 배열을 생성하고, for 루프로 배열의 값을 출력합니다.
코틀린에서의 while 루프
코틀린에서는 자바와 마찬가지로 while 루프를 사용하여 조건이 거짓이 될 때까지 반복 작업을 수행할 수 있습니다. 예를 들어, 다음과 같이 사용할 수 있습니다.
fun main() {
var i = 0
while (i < 5) {
println(i)
i++
}
}
위 코드에서는 변수 i가 5보다 작은 동안 i 값을 출력하고, i 값을 1 증가시킵니다.
코틀린에서의 do-while 루프
코틀린에서는 자바와 마찬가지로 do-while 루프를 사용하여 조건이 거짓이 될 때까지 반복 작업을 수행할 수 있습니다. 이 때, 조건 검사는 루프 내부에서 이루어집니다. 예를 들어, 다음과 같이 사용할 수 있습니다.
fun main() {
var i = 0
do {
println(i)
i++
} while (i < 5)
}
위 코드에서는 변수 i가 5보다 작은 동안 i 값을 출력하고, i 값을 1 증가시킵니다.
코틀린에서의 break와 continue
코틀린에서는 자바와 마찬가지로 break와 continue를 사용하여 제어 흐름을 제어할 수 있습니다. break는 루프를 중지하고, continue는 현재 반복을 건너뜁니다. 예를 들어, 다음과 같이 사용할 수 있습니다.
fun main() {
for (i in 1..5) {
if (i == 3) {
break
}
println(i)
}
for (i in 1..5) {
if (i == 3) {
continue
}
println(i)
}
}
위 코드에서는 첫 번째 for 루프에서 i 값이 3일 때, break 문이 실행되어 루프가 중지됩니다. 두 번째 for 루프에서 i 값이 3일 때, continue 문이 실행되어 현재 반복이 건너뛰어집니다.
결론
이상으로 코틀린에서의 제어 흐름과 반복문에 대해 알아보았습니다. 코틀린에서는 자바와 유사한 제어 흐름 문법을 사용하며, when 식과 Lambda 표현식 등 간결하고 강력한 문법도 함께 제공합니다. 이를 적극적으로 활용하여 보다 유지보수 가능하고 가독성 높은 코드를 작성할 수 있길 바랍니다!
'WebDev' 카테고리의 다른 글
코틀린에서의 상속 및 다형성 (0) | 2023.03.26 |
---|---|
Kotlin에서 함수 및 람다 (0) | 2023.03.26 |
코틀린(Kotlin) 기초 구문 (0) | 2023.03.26 |
대규모의 소프트웨어 엔지니어를 해고 하더라도 기업은 살아남을 수 있을까? (2) | 2023.03.20 |
Python개발시 자주 만나는 에러와 해결책 모음 (0) | 2023.03.17 |
댓글