본문 바로가기
모바일 APP/Android with Kotlin

조건문

by 살길바라냐 2021. 12. 14.
반응형

 

기본적으로 많이 사용하는 조건문 

 

var data = 1
if(data > 1) {
 println('data > 1')
} else if (data > 0 && data <= 1) {
  println('else') 
 } else { 
  println('etc')
  }
  }
  
  // 결과
  // else

 

여기부터 특이한 조건문이 시작

 

if  ~ else 표현식 


결괏값을 반환하는 계산식 
항상 else 문이 있어야 사용 가능하다
결괏값 반환값은 항상 마지막 줄이된다.

 

var data = 1

val result = if (data > 0) {

 println('success')
 true
} else {
 println('fail')
 false
}
 println(result)
}

// 결과
// success 
// true

 

When 조건문

스위치 구문과 비슷한데 왜 만드건지?

소괄호 ( ) 안에 넣은 데이터가 조건이 되고
이값에 따라 각 구문을 실행한다.

- 정수가 아닌 다른 타입의 데이터를 지정도 가능하다.
- 조건문을 생략해서 사용도 가능하다
- else문을 생략도 가능하다. 

 

var data = 1

when(data) {
1 -> println('it is 1')
2 -> println('it is 2')
else -> {
 println('data is invalid')
 }
}
}

// 결과
// it is 1

var data = 'hi'

when(data) {
'hi' -> println('it is hi')
'hello' -> println('it is hello')
else -> {
 println('data is invalid')
 }
}
}

// 결과
// it is hi


var data:any = 1

when(data) {
'hi' -> println('hi면 출력')
'2, 3' -> println('2 나 3 이면 출력')
in 1..10 -> println('1~10 중 있으면 출력')
else -> {
 println('data is invalid')
 }
}
}

// 결과
// 1~10 중 있으면 출력

var data:any = 1

when {
'hi' -> println('hi면 출력')
'2, 3' -> println('2 나 3 이면 출력')
in 1..10 -> println('1~10 중 있으면 출력')
else -> {
 println('data is invalid')
 }
}
}

// 결과
// 1~10 중 있으면 출력
728x90

'모바일 APP > Android with Kotlin' 카테고리의 다른 글

고차 함수  (0) 2021.12.19
람다 함수  (0) 2021.12.19
컬렉션 타입  (0) 2021.12.13
데이터 타입  (0) 2021.12.13
초기화 미루기  (0) 2021.12.13