์ฝํ๋ฆฐ ๋ณ์ ์ ์ธ
์ ์ธ ๋ฐฉ๋ฒ
val (value) - ๋ถ๋ณํ. ์ ์ธํ๊ณ ์ด๊ธฐํ ํ ๊ฐ์ ๋ฐ๊ฟ ์ X
var (variable) - ๊ฐ๋ณํ
fun main() {
var username: String = "Kildong"
username = "Dooly"
println("username: $username")
}
๋ฌธ์์ด ๋ด์ ๋ณ์๋ ์์ ${๋ณ์ ํน์ ์}์ ๊ฐ์ด ์ฌ์ฉํ ์ ์๋ค.
๋ณ์๊ฐ ํ๋์ด๋ฉด $username์ฒ๋ผ ์ค๊ดํธ ์๋ต ๊ฐ๋ฅ.
์ปดํ์ผ๋ฌ๊ฐ ๋ฐ์ดํฐํ์ ์ถ๋ก ํด ์ ์ธํ ์ ๋ ์๋ค.
fun main() {
var username = "Kildong"
var count = 3
println("username: $username, count: $count")
}
์ปดํ์ผ๋ฌ๊ฐ ์ถ๋ก ํ ๋ณ์๋ ctrl + shift + p๋ฅผ ํตํด ๋ฐ์ดํฐ ํ์ ์ ์ ์ ์๋ค.
์ฃผ์์ฌํญ
- ์๋ฃํ์ ์ง์ ํ์ง ์์ ๋ณ์๋ ์ฌ์ฉํ ์ ์๋ค.
- ๋ณ์ ์ด๋ฆ์ 123abc์ ๊ฐ์ด ์ซ์๋ก ์์ํ ์ ์๋ค.
- ๋ณ์ ์ด๋ฆ์๋ while, if ๊ฐ์ ํค์๋๋ ์ฌ์ฉํ ์ ์๋ค.
- ๋ณ์ ์ด๋ฆ์ ์๋ฏธ ์๋ ๋จ์ด๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข๋ค.
- ์นด๋ฉ ํ๊ธฐ๋ฒ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข๋ค. (ex - numberOfBooks)
์๋ฃํ์ ์ข ๋ฅ
ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ์๋ฃํ์ ๊ธฐ๋ณธํ, ์ฐธ์กฐํ ์๋ฃํ์ผ๋ก ๊ตฌ๋ถ๋๋ฉฐ ์ฝํ๋ฆฐ์ ์ฐธ์กฐํ ์๋ฃํ์ ์ฌ์ฉํ๋ค.
๊ธฐ๋ณธํ (Primitive data type)
- ๊ฐ๊ณต๋์ง ์์ ์์ํ ์๋ฃํ์ผ๋ก ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ๋ด์ฅ
- int, long, float, double ๋ฑ
์ฐธ์กฐํ(Reference type)
- ๊ฐ์ฒด๋ฅผ ์์ฑํ๊ณ ๋์ ๊ณต๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋๊ณ ์ด๋ฅผ ์ฐธ์กฐํ๋ ์๋ฃํ
- Java๋ int, long. float ๊ฐ์ ๊ธฐ๋ณธํ๊ณผ String, Data ๊ฐ์ ์ฐธ์กฐํ์ ๋ชจ๋ ์ฌ์ฉ
- Kotlin์ ์ฐธ์กฐํ๋ง ์ฌ์ฉํ๋ฉฐ, ์ปดํ์ผ ๊ณผ์ ์ ํตํด ๊ธฐ๋ณธํ์ผ๋ก ๋ณํ๋๋ค. (์ฑ๋ฅ์ ์ํด)
- ๊ธฐ๋ณธํ๋ณด๋ค๋ ์ฑ๋ฅ์ด ๋ค์↓
- Int, Long, Float, Double ๋ฑ. (๋๋ฌธ์๋ก ์ ์ธ)
์๋ฃํ ์ฌ์ฉ์ ์
1. ์๋ฃํ ์๋ต
val num01 = 127 // Intํ์ผ๋ก ์ถ๋ก
val num02 = 989559489302359407 // ๊ธธ์ด์ Longํ์ผ๋ก ์ถ๋ก
2. ์ ๋ฏธ์ฌ ์ ๋์ฌ ์ฌ์ฉ
val exp01 = 123 // Intํ
val exp02 = 123L // ์ ๋ฏธ์ฌ L => Longํ
val exp03 = 0x0F // ์ ๋์ฌ 0x => 16์ง ํ๊ธฐ๊ฐ ์ฌ์ฉ๋ Intํ
val exp04 = 0b00001011 // ์ ๋์ฌ 0b => 2์งํ๊ธฐ๊ฐ ์ฌ์ฉ๋ Intํ
3. ์์ ๊ฐ์ ์ฌ์ฉ
val exp08: Byte = 127 // ๋ช
์์ ์ผ๋ก ์๋ฃํ ์ง์ . Byteํ
val exp09 = 32767 // ๋ช
์์ ์ผ๋ก ์ง์ ํ์ง ์์ผ๋ฉด, Shortํ ๋ฒ์์ ๊ฐ๋ Intํ์ผ๋ก ์ถ๋ก
val exp10: Short = 32767 // ๋ช
์์ ์ผ๋ก ์๋ฃํ ์ง์ . Shortํ
4. ๋ถํธ ์๋ ์ ์ ์๋ฃํ (unsigned)
val uint: UInt = 153u // usigned intํ. ๋ค์ u๋ฅผ ๋ถ์ฌ์ค๋ค.
val ushort: UShort = 65535u
val ulong: ULong = 46322342uL
val ubtye: UByte = 244u
5. ํฐ ์๋ฅผ ์ฝ๊ธฐ ์ฝ๊ฒ ํ๋ ๋ฐฉ๋ฒ
์ธ๋์ค์ฝ์ด(_)๋ ์ซ์์ ์๋ฌด ์ํฅ์ ๋ฏธ์น์ง ์๋๋ค.
val number = 1_000_000
val cardNum = 1234_1234_1234_1234L
val hexVal = 0xAB_CD_EF_12
val bytes = 0b1101_0010
์ค์ ์๋ฃํ
ํ์ | ์๋ฃํ | ํฌ๊ธฐ | ๊ฐ์ ๋ฒ์ |
์ค์ํ | Double | 8๋ฐ์ดํธ (64๋นํธ) | ์ฝ 4.9E-324 ~ 1.7E+308 (IEEE754) |
Float | 4๋ฐ์ดํธ (32๋นํธ) | ์ฝ 1.4E-45 ~3.4E+38 (IEEE754) |
val exp01 = 3.14 // Double ํ
val exp02 = 3.14F // ์๋ณ์ F์ ์ํด Floatํ
๊ณต๊ฐ ์ ์ฝ์ ๋ฐ๋ฅธ ๋ถ๋ ์์์ ์ฐ์ฐ์ ๋จ์
(๋ถ๋์์์ ์ ๊ดํ ์ค๋ช ์ ์๋ตํ์ต๋๋ค.)
๋ถ๋์์์ ์ ๊ฐ์๋ถ์ ์ง์๋ถ๋ก ๋๋์ด ํํํ๋๋ฐ,
ํํํด์ผ ํ ์ค์๋ ๋ฌดํํ ๋ง์ง๋ง ์ด๋ฅผ ํํํ ๋นํธ๋ ์ ํ์ ์ด๊ธฐ ๋๋ฌธ์ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค.
Float, Double ์๋ฃํ์์ ์ฃผ๋ก ๋ฐ์ํ๋ฏ๋ก ์ฝ๋๋ฅผ ์์ฑํ ๋ ์ฃผ์ํด์ผ ํ๋ค!
fun main() {
var num: Double = 0.1
for(x in 0..999){
num += 0.1
}
println("num: $num")
}
์๋ฃํ์ ์ต๋๊ฐ, ์ต์๊ฐ
fun main() {
println("Byte: ${Byte.MIN_VALUE} ~ ${Byte.MAX_VALUE}")
println("Int: ${Int.MIN_VALUE} ~ ${Int.MAX_VALUE}")
println("Short: ${Short.MIN_VALUE} ~ ${Short.MAX_VALUE}")
println("Long: ${Long.MIN_VALUE} ~ ${Long.MAX_VALUE}")
println("Float: ${Float.MIN_VALUE} ~ ${Float.MAX_VALUE}")
println("Double: ${Double.MIN_VALUE} ~ ${Double.MAX_VALUE}")
}
๐ฏ ๊ฟํ
๋ค์ค ์ ํ: Alt + Shift + ๋๋ธํด๋ฆญ
๊ทธ ๋ฐ์ ์๋ฃํ
๋ ผ๋ฆฌ ์๋ฃํ
ํ์ | ์๋ฃํ | ํฌ๊ธฐ | ๊ฐ์ ๋ฒ์ |
๋ ผ๋ฆฌํ | Boolean | 1๋นํธ | true, false |
val isOpen = true // Booleanํ์ผ๋ก ์ถ๋ก
val isUploaded: Boolean // ์ ์ธ๋ง ํ ๊ฒฝ์ฐ ์๋ฃํ ๋ฐ๋์ ๋ช
์
๋ฌธ์ ์๋ฃํ
ํ์ | ์๋ฃํ | ํฌ๊ธฐ | ๊ฐ์ ๋ฒ์ |
๋ฌธ์ | Char | 2๋ฐ์ดํธ (16๋นํธ) | 0~2^15-1 |
val ch = 'c' // ch๋ Char๋ก ์ถ๋ก
val ch2: Char // ์ ์ธ๋ง ํ ๊ฒฝ์ฐ ์๋ฃํ ๋ฐ๋์ ๋ช
์
๋ฌธ์์ด ์๋ฃํ
๋ฌธ์์ ๋ฐฐ์ด
String์ผ๋ก ์ ์ธ๋๋ฉฐ String Pool์ด๋ผ๋ ๊ณต๊ฐ์ ๊ตฌ์ฑ
๋์ค์ ๊ฐ์ด ๋ณ๊ฒฝ๋๋ฉด ์๋ก์ด ๊ณต๊ฐ์ด ๋ง๋ค์ด์ง๋ ๊ฒ์ด๋ค!
์ ์ฅ๋ "Hello"๊ฐ ๋ฐ๋๋ ๊ฒ์ด ์๋.
fun main() {
var str1: String = "Hello"
var str2 = "World"
var str3 = "Hello"
println("str1 === str2: ${str1===str2}")
println("str1 === str3: ${str1===str3}")
}
==๋ ๊ฐ๋ง ๋น๊ต, ===๋ ์ฐธ์กฐ๊น์ง ๋น๊ต
str1๊ณผ str3๋ ๋๊ฐ์ ์ฐธ์กฐ(A1)๋ฅผ ๊ฐ์ง๊ณ ์๋ ๊ฒ์ด๋ค.
์ฆ, ์ฃผ์๊ฐ ๋๊ฐ๊ณ ๋ณ์ ์ด๋ฆ๋ง ๋ค๋ฅธ ๊ฒ!
ํํ์
๋ฌธ์์ด ์๋ฃํ์์ ํํ์์ด ์ฌ์ฉ ๊ฐ๋ฅํ๋ค.
fun main() {
var a = 1
val str1 = "a = $a"
val str2 = "a = ${a + 2}"
println("str1: \"$str1\", str2: \"$str2\"")
}
์ถ์ฒ
๋ณธ ํฌ์คํ ์ ๋ถ์คํธ์ฝ์ค ์ํฌํฐ์ฆ 3๊ธฐ ํ๋์ผ๋ก์
'์ฝํ๋ฆฐ ํ๋ก๊ทธ๋๋ฐ ๊ธฐ๋ณธ 1' ๊ฐ์๋ฅผ ๋ฃ๊ณ ์์ฑํ์์ต๋๋ค.