: 변수나 함수를 선언하거나 연산을 수행 시 자료형을 코드에 명시하지 않아도 코틀린이 자동으로 자료형을 추론해주는 기능
앞 내용에서 다뤘을 때 보면 조금 이상하지 않은가?
val stringValue = "안녕하세요."
이러한 경우와
var intArr = arrayOf(1, 2, 3, 4, 5)
이렇게 배열을 선언할 때 보통 타입을 지정해줘야 하는데 안해주는 코드를 확인한다. 이것은 타입을 지정 안해줘도 코틀린에서 타입을 추론해준다.
var a = 1234 -> int
var a = 1234L -> long
var c = 12.45 -> double
var d = 12.45f -> float
var e = 0xABCD : 16진수 -> int
var f = 0b0101010 : 2진수 -> int
var g = true -> boolean
var h = 'c' -> char
이런 경우들에 대해서 코틀린을 자료형을 추론해서 정의를 내린다.

코틀린에서는 함수 선언 시 이름 앞에 "fun" 이라고 붙여준다.
fun add 같은 경우 매우 간단한 연산식이지만 벌써 3줄을 차지한다. 이러한 간단한 함수인 경우 간단하게 기술할 수 있도록 제공하는 문법이다.
fun add(a: Int, b: Int, c: Int): Int = a + b + c
위의 식과 같이 한 줄로도 충분히 간단한 연산식의 함수들은 코드 길이 간소화하면서 표현 가능하다.
이렇게 단일 표현식으로 함수를 구현해보면 결국 내부적으로 기능을 가진 형태이지만 외부적으로 파라미터를 넣는다는 점 외에는 자료형이 결정된 변수라는 개념으로 접근하는 것이 좋다.