-2019๋
๊ตฌ๊ธ์์ ์ฝํ๋ฆฐ์ ๊ณต์์ ์ธ ์๋๋ก์ด๋ ์ฑ ๊ฐ๋ฐ ์ธ์ด๋ก ์ฑํํ๋ค
-์๋ฐ์ ๋จ์ ์ ๊ฐ์ ํ๋ค
-์๋ฃํ(ํ์
)์ ๊ผญ ๋ช
์ํ์ง ์์๋ ์ถ๋ก ๊ฐ๋ฅ
-๊ฐ๊ฒฐํ๊ฒ ์ฝ๋๋ฅผ ์์ฑํ ์ ์๋ค
-NULL ์์ธ์ ๋ํด์ ์๋ฐ๋ณด๋ค ๋ ์์ ํ๋ค
JVM ์ธ์ด์ 100% ํธํ๋๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ด๋ค
๊ฐ๊ฒฐํ๊ณ ์์ ํ๊ฒ ๋น๋๊ธฐ ์ฒ๋ฆฌ๋ฅผ ์ํํ ์ ์๋ค.
๊ตฌ๊ธ์์ Kotlin์ ๊ถ์ฅํ๋ ์ด์
: https://developer.android.com/kotlin/first?hl=ko
ํ ์ค ์ญ์ : Ctrl + Y
์ฃผ๋ก ๋ณ์, ๋ฉ์๋์ ์ด๋ฆ์ ์ง์ ํ ๋ ์ฌ์ฉ
seoulFood (O)
seoul_food (X)
seoulfood (X)
์ฃผ๋ก ์์์ ์ด๋ฆ์ ์ง์ ํ ๋ ์ฌ์ฉ
seoul_food (O)
SeoulFood (X)
์ฃผ๋ก ํด๋์ค์ ์ด๋ฆ์ ์ง์ ํ ๋ ์ฌ์ฉ
SeoulFood (O)
Seoul_Food (X)
๊ธฐ๋ณธ์ ์ผ๋ก ์ ๋ ฅ๋ฐ๋ ๊ฒ์ ๋ฌธ์์ด์ด๋ค.
val dataString = readLine()
println("๋๋ ${dataString }๋ฅผ ์
๋ ฅํ์ด์!")
>> ์ฝํ๋ฆฐ
๋๋ ์ฝํ๋ฆฐ๋ฅผ ์
๋ ฅํ์ด์!
val dataNumber = readLine()!!.toInt()
val sum = dataNumber + 3
println("์
๋ ฅ์ ${dataNumber}์ธ๋ฐ 3์ ๋ํด์ ${sum }์ด์์!")
>> 3
์
๋ ฅ์ 3์ธ๋ฐ 3์ ๋ํด์ 6์ด์์!
๋นํธ๋ ์ปดํจํฐ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ตฌ์ฑํ๋ ๋ฐฉ ํ์นธ์ด๋ผ๊ณ ์๊ฐํ๋ฉด ์ฝ๋ค.
์ ํ์ ์ธ ์์์ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ๊ธฐ ์ํด์๋ ์ ์ ํ ์๋ฃํ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ค์ํ๋ค.
var ํค์๋๋ฅผ ์ฌ์ฉ. ๊ฐ์ด ๋ณํ ์ ์์
// var name:String = "์ฐธ์"
var name = "์ฐธ์"
println("์์ ์ด๋ฆ์ ์ ์ฅํ๋ name ๋ณ์์๋ ${name}๊ฐ ๋ค์ด์์ด")
name = "์กฐ๋กฑ๋ฐ์ด" // name๋ณ์์ ๋ค์ด์๋ "์ฐธ์" ๋์ ์ "์กฐ๋กฑ๋ฐ์ด"๋ฅผ ๋์
println("๋ณ๊ฒฝํ ๋ณ์ name์๋ ${name}๊ฐ ๋ค์ด์์ด")
>> ์์ ์ด๋ฆ์ ์ ์ฅํ๋ name ๋ณ์์๋ ์ฐธ์๊ฐ ๋ค์ด์์ด
๋ณ๊ฒฝํ ๋ณ์ name์๋ ์กฐ๋กฑ๋ฐ์ด๊ฐ ๋ค์ด์์ด
val ํค์๋๋ฅผ ์ฌ์ฉ. ๊ฐ์ด ๋ณํ ์ ์์
val num1 = 1
println("๋ด ์ฒซ๋ณ์ num1 ๋ณ์์๋ ${num1}์ด ๋ค์ด์์ด")
// Val cannot be reassigned ์๋ฌ ๋ฐ์!!
// num1์ var์ด ์๋๋ผ val์ด๊ธฐ๋๋ฌธ์ ๋ค์ด์๋ ๊ฐ์ ๋ณ๊ฒฝํ์ง ๋ชปํจ
num1 = 5
println("๋ณ๊ฒฝํ ๋ณ์ num1 ๋ณ์์๋ ${num1}์ด ๋ค์ด์์ด")
>> Val cannot be reassigned