모던 안드로이드 - 코틀린과 JetPack 활용 #3 - if, for, when
강의 URL
if 문
- 조건에 따른 분기 처리가 필요할 때 사용
- 조건이 A이면 B 실행, 조건이 C이면 D 실행
- 조건이 A이면 B 실행, 기타 조건이면 D 실행
- 조건이 A이면 B 실행, 조건이 C이면 D 실행, 기타 조건이면 E 실행
- 그 외 다양한 분기 처리
- 조건에 따라 다른 값을 계산하는 식(expression) 작성 가능
예 - 분기 처리
아래 코드는 number 상수가 짝수이면 "Number is even."을, 그것이 홀수이면 "Number is odd."를 콘솔 화면에 출력합니다.
val number = 37
// 조건: number가 짝수이면
if ((number % 2) == 0) {
println("Number is even.")
}
// 기타 조건
else {
println("Number is odd.")
}
예 - 조건에 따라 다르게 계산하는 식
아래 if ... else ... 식은 number가 짝수이면 true가, 홀수이면 false가 계산되어 isEven 상수에 저장됩니다.
val number = 36
val isEven: Boolean = if ((number % 2) == 0) true else false
for 문
- 1줄 이상 코드를 반복 실행할 때 활용
- Java 대비 편의성 향상
예 - 1부터 10까지 더하기
fun main() {
var sum = 0
for (i in 1..10) {
sum = sum + i
}
println("Sum: $sum")
}
예 - 리스트 객체의 각 요소 방문
fun main() {
var sum = 0
val numberList = listOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
for (number in numberList) {
sum = sum + number
}
println("Sum: $sum")
}
when 문
- 다중 분기 가능
- Java의 switch 문 대비 편의성 향상
예 - 등급별 통과 여부 계산
fun main() {
val grade: String = "A"
var isPass: Boolean = false
when (grade) {
"A", "B", "C", "D" -> {
isPass = true
}
"F" -> {
isPass = false
}
else -> {
println("Invalid grade.")
return
}
}
println("Pass? $isPass")
}
예 - 점수별 등급 계산
fun main() {
var grade: String = ""
val score: UInt = 83U
when (score) {
in 90U..100U -> {
grade = "A"
}
in 80U..89U -> {
grade = "B"
}
in 70U..79U -> {
grade = "C"
}
in 60U..69U -> {
grade = "D"
}
in 0U..59U -> {
grade = "F"
}
else -> {
grade = ""
println("Invalid score.")
return
}
}
println("Score: $score")
println("Grade: $grade")
}
모던 안드로이드 - 코틀린과 JetPack 활용 (지난 내용)
Sort: Trending
[-]
successgr.with (74) 3 years ago