package com.rodunstudio.kotlinbasic.Example 

fun main(args: Array<String>) 
{ 
  // 1. When 사용법 
  var value: Int? = 3 
  when( value ) 
  { 
      1 -> println("value는 1이다.") 
      2 -> println("value는 2이다.") 
      3 -> println("value는 3이다.") 
      else -> 
      { 
          println("값을 알수없다.") 
          value = null 
      } 
  } 

  // 2. When의 반환값 
  val value2 = when(value) 
  { 
      1 -> 11 
      2 -> 22 
      3 -> 33 
      else -> null 
  } 

  // 2-1. 값을 return하는 when은 모든 경우의 수에도 값을 return하도록 구성해야 한다. 
  var BooleanCheck: Boolean? = null 
  val result1: Int = when(BooleanCheck) 
  { 
      true -> 2 
      false -> 3 
      null -> 0 // 위의 Boolean변수가 null을 포함하도록 선언 되었기 때문에 추가 
  } 

  // 3. 중복 조건(x, y, z)과 범위 설정 (in x..y) 
  val value3 = when(value) 
  { 
      1, 11, 21 -> 11 // 중복 조건은 ,(콤마)로 설정 가능 
      in 4..40 -> 44 // 범위 설정 ( 4 <= x <= 40 )을 뜻함 
      else -> null 
  } 

  // 4. Any Type: 어떤 Type으로도 변할 수 있는 Type 
  // 4-1. is 구문: 변수의 Type을 묻는 구문 
  val value4: Any? = null 
  when (value4) 
  { 
      is Int -> 20 
      is Float -> 5.5f 
      is Double -> 10.55 
      is Boolean -> true 
      else -> println("Type을 알수없다.") 
  } 
  println(value4) 

} 

+ Recent posts