Android

[Android] 코틀린(Kotlin) 변수(Variable)/상수(Constant)/데이터 타입(Data type)/제어 흐름(Control flow)

구루싸 2020. 4. 17. 01:12
반응형
SMALL

요새 넷플릭스(Netflix)의 플래시 정주행 중인데

너무 재밌네요-_-

지난 번에 코틀린(Kotlin) 학습을 위해

인텔리제이(IntelliJ) 설치를 진행했으니

본격적으로 시작해야겠죠?

설치 방법이 궁금하시다면 아래의 링크로 Go~

2020/04/16 - [Android] - [Android] 인텔리제이(IntelliJ IDEA) 설치

 

[Android] 인텔리제이(IntelliJ IDEA) 설치

어느 덧 봄도 거의 끝나가는지 슬슬 몸에서 땀이 나기 시작하네요-_- 오늘은 코틀린 애플리케이션을 개발하기 위해 인텔리제이(IntelliJ)를 설치해보겠습니다 인텔리제이는 코틀린(Kotlin) 언어를 만든 젯브레인즈..

yssa.tistory.com

자 그럼 먼저 코틀린의 변수(Variable)와 상수(Constant)를 보겠습니다

//상수
const val MAX_EXPERIENCE: Int = 500

fun main(args: Array<String>) {
    var experiencePoints: Int = 5
    val playerName: String = "GuruSa"
    experiencePoints += 5
    println("$playerName : $experiencePoints")
    //type inference
    val name = "GuruSa"
}

experiencePoints는 var로 선언되었고 Int 형이며

var는 variable로 값이 변할 수 있는 변수입니다

playerName은 val로 선언되었고 String 형이며

val은 value로 상수는 아니고 읽기 전용(read-only)입니다

상수는 MAX_EXPERIENCE로 const val로 선언되고 Int 형입니다

코틀린은 오로지 참조형(reference) 타입만을 제공합니다

마지막 줄에 name은 특별히 타입을 정하고 있지 않지만

타입 추론(type inference)를 통해 String으로 인지합니다

fun main(args: Array<String>) {
    var healthPoints = 100
    val isBlessed = true
    val isImmortal = false
    if (healthPoints == 100) {
        //string concatenation
        println(name + " 최상의 상태임")
    } else if (healthPoints in 90..99) {//range
        //string template
        println("$name 약간의 찰과상만 있음")
    } else if (healthPoints >= 75) {
        if (isBlessed) {
            println("$name 경미한 상처가 있지만 빨리 치유됨")
        } else {
            println("$name 경미한 상처만 있음")
        }
    } else {
        println("$name 최악의 상태임")
    }
    if (isBlessed && healthPoints > 50 || isImmortal) {
        println("GREEN")
    } else {
        println("NONE")
    }
    val auraVisible = isBlessed && healthPoints > 50 || isImmortal
    //conditional expression
    val auraColor = if (auraVisible) "GREEN" else "NONE"
    println(auraColor)
    val race = "gnome"
    val faction = when (race) {
        "dwarf" -> "Keepers of the Mines"
        "gnome" -> "Keepers of the Mines"
        "orc" -> "Free People of the Rolling Hills"
        "human" -> "Free People of the Rolling Hills"
        else -> "Etc"
    }
    println(faction)
}

위의 코드는 코틀린의 조건문과 조건 표현식(conditional expression)을 보여줍니다

조금 특이한 점은 -> 연산자의 쓰임인데

C 언어에 익숙한 분들은 조금 헤깔릴 수도 있을 것 같네요

when 구문의 의미를 보면

-> 왼쪽의 값이 race와 같으면

오른쪽의 값을 faction에 대입한다는 것입니다

출력 결과는 "Keepers of the Mines"가 되겠죠~

이것으로 오늘의 학습을 마치겠습니다

그럼 이만-_-

 

반응형
LIST