요새 넷플릭스(Netflix)의 플래시 정주행 중인데
너무 재밌네요-_-
지난 번에 코틀린(Kotlin) 학습을 위해
인텔리제이(IntelliJ) 설치를 진행했으니
본격적으로 시작해야겠죠?
설치 방법이 궁금하시다면 아래의 링크로 Go~
2020/04/16 - [Android] - [Android] 인텔리제이(IntelliJ IDEA) 설치
자 그럼 먼저 코틀린의 변수(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"가 되겠죠~
이것으로 오늘의 학습을 마치겠습니다
그럼 이만-_-
'Android' 카테고리의 다른 글
[Android] 코틀린(Kotlin) 문자열(String)과 숫자(Numeric) (0) | 2020.04.21 |
---|---|
[Android] 코틀린(Kotlin) null과 예외(Exception) (0) | 2020.04.18 |
[Android] 코틀린(Kotlin) 함수(Function) (0) | 2020.04.18 |
[Android] 인텔리제이(IntelliJ IDEA) 설치 (0) | 2020.04.16 |
[Android] 안드로이드(Android) (0) | 2020.03.17 |