var : 변수
val : 변하지 않는 값.
<aside> ⭐ var/val 이 존재하는 이유
코틀린에서는 기본적으로 값의 변경 불가 → 부수 효과(side effect)
감소 목적
함수형 프로그래밍에서는 값의 불변성이 매우 중요함.
자바에서 함수형 프로그래밍
</aside>
side effect
: 특정 작업으로 인해 관련이 없는 값의 변경을 초래
하는 등의 변화를 의미, 프로그램의 디버깅을 어렵게 만들고, 쉽게 부서지는 코드가 될 수 있음
자바
Kotlin에서는 기본 타입은 없고, 오직 참조 타입(Reference Type)만 존재한다. → 자바의 wrapping type과 동일한 의미
fun main(args: Array<String>) {
// 컴파일 시 타입추론으로 자료형 추측
val total_num = 0
val age: Int = 20
val pi: Double = 3.141592
val random: Float = 12.344f
val myName: String = "kchabin"
val description: String = """ Hello my name is kchabin """
val isFemale: Boolean = true
val genderCode: Char = 'F'
println("Total Num: " + total_num)