Skip to content

基本型別

Kotlin 中的每個變數和資料結構都具有型別。型別很重要,因為它們告訴編譯器您可以對該變數或資料結構執行哪些操作。換句話說,它擁有哪些函式和屬性。

在上一章節中,Kotlin 能夠從先前的範例判斷 customers 的型別為 Int。Kotlin 推斷型別的能力稱為型別推斷customers 被賦予一個整數值。從中,Kotlin 推斷出 customers 具有數值型別 Int。因此,編譯器知道您可以對 customers 執行算術運算:

kotlin
fun main() {
    var customers = 10

    // 有些顧客離開了隊列
    customers = 8

    customers = customers + 3 // 加法範例:11
    customers += 7            // 加法範例:18
    customers -= 3            // 減法範例:15
    customers *= 2            // 乘法範例:30
    customers /= 3            // 除法範例:10

    println(customers) // 10
}

+=-=*=/=%= 是複合賦值運算子。更多資訊,請參閱複合賦值

總計,Kotlin 具有以下基本型別:

類別基本型別範例程式碼
整數ByteShortIntLongval year: Int = 2020
無符號整數UByteUShortUIntULongval score: UInt = 100u
浮點數FloatDoubleval currentTemp: Float = 24.5fval price: Double = 19.99
布林值Booleanval isEnabled: Boolean = true
字元Charval separator: Char = ','
字串Stringval message: String = "Hello, world!"

有關基本型別及其屬性的更多資訊,請參閱基本型別

有了這些知識,您可以宣告變數並在稍後初始化它們。只要變數在首次讀取前被初始化,Kotlin 就能夠管理這項操作。

若要宣告變數而不初始化它,請使用 : 指定其型別。例如:

kotlin
fun main() {
    // 宣告但未初始化的變數
    val d: Int
    // 初始化的變數
    d = 3

    // 明確指定型別並初始化的變數
    val e: String = "hello"

    // 變數已被初始化,可以讀取
    println(d) // 3
    println(e) // hello
}

如果您在讀取變數之前沒有初始化它,您會看到錯誤:

kotlin
fun main() {
    // 宣告但未初始化的變數
    val d: Int
    
    // 觸發錯誤
    println(d)
    // 變數 'd' 必須被初始化
}

現在您知道如何宣告基本型別了,是時候了解集合了。

練習

練習

明確宣告每個變數的正確型別:

kotlin
fun main() {
    val a: Int = 1000 
    val b = "log message"
    val c = 3.14
    val d = 100_000_000_000_000
    val e = false
    val f = '
'
}
範例解答
kotlin
fun main() {
    val a: Int = 1000
    val b: String = "log message"
    val c: Double = 3.14
    val d: Long = 100_000_000_000_000
    val e: Boolean = false
    val f: Char = '
'
}