일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 이중for문 사용 안하기
- 안드로이드 스튜디오 style
- Thread
- java thread 예제
- 안드로이드 mvvm 예제
- 아파치 엔진엑스
- 디자인 패턴 예제
- apache란
- 안드로이드 스튜디오 tts
- dagger error
- edittext 연결
- 안드로이드 스튜디오 인터넷 연결 확인
- 안드로이드 스튜디오 custom dialog
- 안드로이드 디자인패턴
- java
- 안드로이드 스튜디오 반복되는 레이아웃 코드
- 변수
- Kotlin
- recyclerview item recycle
- LifeCycle
- 객체지향 프로그래밍 5가지 원칙
- 리사이클러뷰 아이템 재사용
- 다른 객체 리스트의 비교
- 안드로이드 스튜디오 커스텀 다이얼로그
- 아파치란
- 자바 스레드 예제
- hilt error
- AAC
- 안드로이드 스튜디오 인터넷 연결 안되어 있을 때
- apache nginx
- Today
- Total
Sam Story
Kotlin 조건문 본문
Kotlin의 조건문 if-else 와 when
if-else 구문은 프로그래밍을 하는 사람들이라면 굉장히 익숙한 조건문이다.
when 의 경우는 자바에서 쓰이는 switch 구문과 비슷하다.
코드를 보며 조건문에 대해서 알아보도록하자.
1. if-else 문
if-else 의 경우 if (조건식) { 실행할 코드 }를 기본 구조로 한다.
여기서 주의해야 할건 조건식의 결과는 무조건 true or false 이어야 한다는 점이다.
조건식의 내용이 true 인 경우 중괄호 안에 코드를 실행하게 된다.
조건식의 내용이 false인 경우 if문 뒤에 있는 else{ 실행할 코드 } 가 실행된다.
아래 코드를 보면 좀더 직관적으로 알 수 있다.
fun main(){
// 이름 이라는 변수에 sam 이라는 값을 할당해 주었다.
var name:String = "sam"
if(name.equals("sam")){ // name 의 값이 "sam"과 일치할 경우 중괄호 안에 코드를 실행
println("이름이 일치합니다.")
}else{ // name 의 값이 "sam"과 일치하지 않을 경우 중괄호 안에 코드를 실행
println("이름이 일치하지 않습니다.")
}
}
위 코드를 실행하게 되면
if 문 조건식 안에 조건이 true 이므로 if문 중괄호 안에 있는 코드가 실행되게 된다.
그리고 이 코드를 좀더 간단하게 나타낼 수 있는데
fun main(){
// 이름 이라는 변수에 sam 이라는 값을 할당해 주었다.
var name:String = "sam"
if(name.equals("sam")) println("이름이 일치 합니다.") else println("이름이 일치하지 않습니다")
}
간단한 조건의 경우에는 위 코드와 같이 한줄로도 표현할 수 있다.
2. if - else if - else 문
if - else if - else 의 경우는
if문의 조건을 만족하지 않으면 바로 else의 코드를 실행하는게 아니라
else if 의 조건을 만족하는지 한번더 확인하기 위한 구문이다.
코드를 보면 보다 이해하기 쉽다.
위에서 사용한 예제를 조금 수정했다.
fun main(){
// 이름 이라는 변수에 sam2 이라는 값을 할당해 주었다.
var name:String = "sam2"
if(name.equals("sam")){ // name 의 값이 "sam"과 일치할 경우 중괄호 안에 코드를 실행
println("이름이 sam 입니다.")
} else if(name.equals("sam2")){ // name의 값이 "sam2"와 일치할 경우 중괄호 안에 코드를 실행
println("이름이 일치합니다.")
} else{ // name 의 값이 "sam"과 일치하지 않을 경우 중괄호 안에 코드를 실행
println("이름이 일치하지 않습니다.")
}
}
위코드를 실행하게 되면
else if 중괄호 안에 코드가 실행된 결과값이 출력된다.
if - else if - else 문의 경우도 if - else 문에서 했던것처럼 한줄 코드로도 나타낼 수 있다.
fun main(){
// 이름 이라는 변수에 sam2 이라는 값을 할당해 주었다.
var name:String = "sam2"
if(name.equals("sam")) println("이름이 sam 입니다") else if(name.equals("sam2")) println("이름이 일치합니다.") else println("이름이 일치하지 않습니다")
}
3. when 문
when의 경우는 if문 과 조건을 검사한다는 점은 같지만
if와 달리 조건식이 아닌 조건을 검사할 값이 들어간다는 점이 다르다.
즉 when에는 true나 false가 결과값으로 나오는값이 아닌 변수가 들어간다
기본 구조는
when( 검사할 값 ) { case1 -> 코드실행1
case2 -> 코드실행2
else -> 코드실행3 }
이런 구조로 되어있다 겉보기에는 java 의 switch case문과 굉장히 유사하다고 생각한다.
간단한 예제를 보면 이해하기 쉬울 것이다.
fun main(){
// x라는 변수에 5를 할당해 주었다.
val x = 5
// when 구문에 x 변수를 조건식에 넣는다.
when(x){
1 -> println("x의 값은 1이다.")
2 -> println("x의 값은 2이다.")
3,4 -> println("x의 값은 3 또는 4 이다.")
in 5..8 -> println("x의 값은 5 이상 8 이하다")
else -> println("어떠한 조건에도 맞지 않다.")
}
}
이런식으로 여러 분기의 조건문을 표현할 수 있는게 when 문이다.
이미 할당된 변수를 when 조건문에 표현하는거 뿐만 아니라
선언한 변수에 할당을 해줄때에도 when 문이 사용이 가능하다
fun main(){
val num1 = 6 // num1 의 값은 6으로 할당
// num2 의 값은 when문으로 인해 결정됨.
val num2 = when {
num1 == 3 -> "num1은 3이다"
num1 == 6 -> "num1은 6이다"
else -> "num1은 3도 6도 아니다."
}
println(num2)
}
위 코드를 실행하게 되면
결과값은 이렇게 나오고 최종적으로 num2의 값은 "num1은 6이다" 로 지정이된다.
이런식으로 간단하게 코틀린 if-else , if - else if - else , when 문에 대해서 알아보았다.
'Kotlin' 카테고리의 다른 글
Kotlin 기본 생성자 오버로딩 (1) | 2024.04.20 |
---|---|
Kotlin 변수와 자료형 (0) | 2024.02.01 |