Variable
์ซ์ํ ๋ฐ์ดํฐ ํ์
Kotlin์์๋ ๊ธฐ๋ณธ์ ์ผ๋ก 4๊ฐ์ ์ซ์ํ ๋ฐ์ดํฐ ํ์
์ ์ ๊ณตํฉ๋๋ค. ์ด ์ค์์ ๊ฐ์ฅ ์์ ๋ฒ์๋ฅผ ๊ฐ๋ ํ์
์ Byte
์ด๋ฉฐ, 8๋นํธ ํฌ๊ธฐ๋ฅผ ๊ฐ์ต๋๋ค. ๋ค์์ผ๋ก ์์ ๋ฒ์๋ Short
์ด๋ฉฐ, 16๋นํธ ํฌ๊ธฐ๋ฅผ ๊ฐ์ต๋๋ค. Int
๋ 32๋นํธ ํฌ๊ธฐ๋ฅผ ๊ฐ์ผ๋ฉฐ, Long
์ 64๋นํธ ํฌ๊ธฐ๋ฅผ ๊ฐ์ต๋๋ค. ์ด๋ฌํ ์ซ์ํ ๋ฐ์ดํฐ ํ์
๋ค์ ๋ค์๊ณผ ๊ฐ์ด ์ ์ธํ ์ ์์ต๋๋ค.
Byte
8๋นํธ
Short
16๋นํธ
Int
32๋นํธ
Long
64๋นํธ
์ฐ์ฐ์
Kotlin์์๋ ๋ค์ํ ์ฐ์ฐ์๋ฅผ ํ์ฉํ์ฌ ์ซ์ํ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ฐ์ฐ์๋ ์ฐ์ ์ฐ์ฐ์, ๋น๊ต ์ฐ์ฐ์, ๋ ผ๋ฆฌ ์ฐ์ฐ์ ๋ฑ์ด ์์ต๋๋ค.
์ฐ์ ์ฐ์ฐ์
Kotlin์์๋ ๋ค์๊ณผ ๊ฐ์ ์ฐ์ ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
+
๋ํ๊ธฐ
-
๋นผ๊ธฐ
*
๊ณฑํ๊ธฐ
/
๋๋๊ธฐ
%
๋๋จธ์ง
๋น๊ต ์ฐ์ฐ์
Kotlin์์๋ ๋ค์๊ณผ ๊ฐ์ ๋น๊ต ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
==
๊ฐ๋ค
!=
๋ค๋ฅด๋ค
<
์๋ค
>
ํฌ๋ค
<=
์๊ฑฐ๋ ๊ฐ๋ค
>=
ํฌ๊ฑฐ๋ ๊ฐ๋ค
๋
ผ๋ฆฌ ์ฐ์ฐ์
Kotlin์์๋ ๋ค์๊ณผ ๊ฐ์ ๋ ผ๋ฆฌ ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
&&
๋ ผ๋ฆฌ ๊ณฑ (AND)
||
๋ ผ๋ฆฌ ํฉ (OR)
!
๋ ผ๋ฆฌ ๋ถ์ (NOT)
์ซ์ํ ๋ฐ์ดํฐ ํ์
๊ฐ ๋ณํ
Kotlin์์๋ ์ซ์ํ ๋ฐ์ดํฐ ํ์ ๊ฐ ๋ณํ์ ์ํด ๋ค์๊ณผ ๊ฐ์ ํจ์๋ฅผ ์ ๊ณตํฉ๋๋ค.
toByte()
toShort()
toInt()
toLong()
toFloat()
toDouble()
toChar()
์ด๋ฌํ ํจ์๋ฅผ ์ฌ์ฉํ์ฌ, ๋ค๋ฅธ ์ซ์ํ ๋ฐ์ดํฐ ํ์
์ผ๋ก ๋ณํํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, Int
ํ์
์ ๋ณ์๋ฅผ Long
ํ์
์ผ๋ก ๋ณํํ๋ ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ์์ฑํ ์ ์์ต๋๋ค.
kotlinCopy codeval intNum: Int = 123
val longNum: Long = intNum.toLong()
์ ์ฝ๋์์๋ Int
ํ์
์ intNum
๋ณ์๋ฅผ Long
ํ์
์ผ๋ก ๋ณํํ์ฌ, longNum
๋ณ์์ ๋์
ํ๊ณ ์์ต๋๋ค.
๋ํ, Kotlin์์๋ ์ซ์ํ ๋ฐ์ดํฐ ํ์
๊ฐ์ ์๋ ํ ๋ณํ๋ ์ง์ํฉ๋๋ค. ์ฆ, ์์ ๋ฐ์ดํฐ ํ์
์์ ํฐ ๋ฐ์ดํฐ ํ์
์ผ๋ก์ ์๋ ํ ๋ณํ์ด ๊ฐ๋ฅํฉ๋๋ค. ์๋ฅผ ๋ค์ด, Byte
ํ์
์ ๋ณ์๋ฅผ Int
ํ์
์ ๋ณ์์ ๋์
ํ๋ฉด, Byte
ํ์
์ ๋ณ์๊ฐ ์๋์ผ๋ก Int
ํ์
์ผ๋ก ํ ๋ณํ๋์ด ๋์
๋ฉ๋๋ค.
kotlinCopy codeval byteNum: Byte = 10
val intNum: Int = byteNum
๋ถํธ ์๋ ์ ์ํ ๋ฐ์ดํฐ ํ์
Kotlin์์๋ ๋ถํธ ์๋ ์ ์ํ ๋ฐ์ดํฐ ํ์
์ผ๋ก UByte
, UShort
, UInt
, ULong
์ ์ ๊ณตํฉ๋๋ค. ๋ถํธ ์๋ ์ ์ํ ๋ฐ์ดํฐ ํ์
์ ๋ถํธ ์๋ ์ ์ํ ๋ฐ์ดํฐ ํ์
๊ณผ ๋ค๋ฅด๊ฒ ์์ ๊ฐ์ ํํํ ์ ์์ผ๋ฉฐ, ์์ ๊ฐ์ ๋ฒ์๊ฐ ๋ ๋์ต๋๋ค.
UByte
8๋นํธ
UShort
16๋นํธ
UInt
32๋นํธ
ULong
64๋นํธ
๋ถํธ ์๋ ์ ์ํ ๋ฐ์ดํฐ ํ์
์ฌ์ฉ
๋ถํธ ์๋ ์ ์ํ ๋ฐ์ดํฐ ํ์ ์ ๋ค์๊ณผ ๊ฐ์ด ์ ์ธํ ์ ์์ต๋๋ค.
kotlinCopy codeval ubyteNum: UByte = 10u
val ushortNum: UShort = 100u
val uintNum: UInt = 1000u
val ulongNum: ULong = 10000uL
๋ถํธ ์๋ ์ ์ํ ๋ฐ์ดํฐ ํ์
์ ๋ฆฌํฐ๋ด ๊ฐ์ u
๋๋ U
๋ฅผ ์ฌ์ฉํ์ฌ ํ๊ธฐํฉ๋๋ค. ULong
ํ์
์ ๊ฒฝ์ฐ, L
๋๋ l
์ ์ฌ์ฉํ์ฌ ํ๊ธฐํฉ๋๋ค.
๋ถํธ ์๋ ์ ์ํ ๋ฐ์ดํฐ ํ์ ์ ๋ถํธ ์๋ ์ ์ํ ๋ฐ์ดํฐ ํ์ ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ์ฐ์ ์ฐ์ฐ์, ๋น๊ต ์ฐ์ฐ์, ๋ ผ๋ฆฌ ์ฐ์ฐ์ ๋ฑ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
kotlinCopy codeval ubyteNum1: UByte = 10u
val ubyteNum2: UByte = 20u
val result1 = ubyteNum1 + ubyteNum2
val result2 = ubyteNum1 > ubyteNum2
println("result1: $result1") // 30
println("result2: $result2") // false
๋ถ๋ฆฌ์ธ ๋ฐ์ดํฐ ํ์
Kotlin์์๋ ๋ถ๋ฆฌ์ธ ๋ฐ์ดํฐ ํ์
์ผ๋ก Boolean
์ ์ ๊ณตํฉ๋๋ค. Boolean
ํ์
์ ์ฐธ(true)๊ณผ ๊ฑฐ์ง(false) ๋ ๊ฐ์ง ๊ฐ๋ง ๊ฐ์ง ์ ์์ต๋๋ค.
๋ถ๋ฆฌ์ธ ๋ฐ์ดํฐ ํ์
์ฌ์ฉ
Boolean
ํ์
์ ๋ณ์๋ ๋ค์๊ณผ ๊ฐ์ด ์ ์ธํ ์ ์์ต๋๋ค.
kotlinCopy codeval isTrue: Boolean = true
val isFalse: Boolean = false
๋ถ๋ฆฌ์ธ ๋ฐ์ดํฐ ํ์ ์ ์ฃผ๋ก ์กฐ๊ฑด๋ฌธ(if๋ฌธ, when๋ฌธ)์์ ์ฌ์ฉ๋ฉ๋๋ค.
kotlinCopy codeval x = 10
val y = 5
if (x > y) {
println("x is greater than y")
} else {
println("y is greater than x")
}
kotlinCopy codeval isSunny = true
val isWarm = false
val isNiceDay = isSunny && isWarm
val isBadDay = isSunny || isWarm
val isNotSunny = !isSunny
println("isNiceDay: $isNiceDay") // false
println("isBadDay: $isBadDay") // true
println("isNotSunny: $isNotSunny") // false
๋ฌธ์์ด ํ
ํ๋ฆฟ
kotlinCopy codeval name = "Alice"
val age = 25
val message = "My name is $name and I am $age years old."
println(message)
์ ์ฝ๋์์๋ $
๊ธฐํธ๋ฅผ ์ฌ์ฉํ์ฌ name
๊ณผ age
๋ณ์์ ๊ฐ์ ๋ฌธ์์ด์ ํฌํจํ๊ณ ์์ต๋๋ค. ์ด๋ฌํ ๋ฌธ์์ด ํ
ํ๋ฆฟ์ ์ฌ์ฉํ๋ฉด, ๋ณ์๋ ์์ ๊ฐ์ ์ฝ๊ฒ ๋ฌธ์์ด์ ํฌํจํ ์ ์์ผ๋ฉฐ, ๊ฐ๋
์ฑ์ด ์ข์์ง๋๋ค.
๋ํ, ${}
๊ธฐํธ๋ฅผ ์ฌ์ฉํ์ฌ ๋ณ์๋ ์์ ๊ฐ์ ์กฐํฉํ์ฌ ํํ์์ ์์ฑํ ์๋ ์์ต๋๋ค.
kotlinCopy codeval x = 10
val y = 5
val message = "The sum of $x and $y is ${x + y}."
println(message)
์ ์ฝ๋์์๋ ${}
๊ธฐํธ๋ฅผ ์ฌ์ฉํ์ฌ x
์ y
๋ณ์์ ๊ฐ์ ๋ํ ๊ฒฐ๊ณผ๋ฅผ ๋ฌธ์์ด์ ํฌํจํ๊ณ ์์ต๋๋ค. ์ด๋ฌํ ํํ์์ ${}
๊ธฐํธ ์์ ์์์ ํํ์์ ์์ฑํ ์ ์์ผ๋ฉฐ, ๋ณ์๋ ์์ ๊ฐ์ ์กฐํฉํ์ฌ ๋ณต์กํ ํํ์์ ๋ง๋ค ์๋ ์์ต๋๋ค.
๋ฌธ์์ด ๋ฆฌํฐ๋ด
Kotlin์์๋ ๋ฌธ์์ด์ ์์ฑํ ๋, ๋ค์๊ณผ ๊ฐ์ด 3๊ฐ์ง ์ข
๋ฅ์ ๋ฐ์ดํ(""
, ''
, """ """
)๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
""
: ์ผ๋ฐ์ ์ธ ๋ฌธ์์ด์ ๋ํ๋ ๋๋ค.''
: ๋ฌธ์ ํ๋๋ฅผ ๋ํ๋ ๋๋ค.""" """
: ์ฌ๋ฌ ์ค์ ๊ฑธ์ณ ๋ฌธ์์ด์ ๋ํ๋ ๋๋ค.
kotlinCopy codeval s1 = "Hello"
val c1 = 'H'
val s2 = """
Hello,
World!
""".trimIndent()
์ ์ฝ๋์์๋ ""
๊ธฐํธ๋ฅผ ์ฌ์ฉํ์ฌ s1
๋ณ์์ ์ผ๋ฐ์ ์ธ ๋ฌธ์์ด์, ''
๊ธฐํธ๋ฅผ ์ฌ์ฉํ์ฌ c1
๋ณ์์ ๋ฌธ์ ํ๋๋ฅผ, """ """
๊ธฐํธ๋ฅผ ์ฌ์ฉํ์ฌ s2
๋ณ์์ ์ฌ๋ฌ ์ค์ ๊ฑธ์ณ ๋ฌธ์์ด์ ๊ฐ๊ฐ ๋์
ํ๊ณ ์์ต๋๋ค.
Last updated