Kotlin入門教學:陣列與列表

發布日期:2023/12/15
瀏覽次數:557

在Kotlin中,陣列(Array)、不可變列表(List)和可變列表(MutableList)是常見的資料結構,用來存儲一系列的元素。這一篇將深入介紹這三種結構的使用方式、優缺點以及注意事項。

Array – 陣列

基本用法

Kotlin中的陣列是固定大小的,宣告後無法再改變其大小。

val numbers = arrayOf(1, 2, 3, 4, 5)

存取元素

val firstNumber = numbers[0]
println("第一個數字是 $firstNumber")

修改元素

numbers[1] = 10
println("修改後的陣列: ${numbers.joinToString()}")

範例:計算總和

val sum = numbers.sum()
println("陣列的總和是 $sum")

優點:

缺點:

List – 不可變列表

基本用法

Kotlin的 List 是一個不可變(immutable)的列表,一旦初始化大小和元素,就不能再改變。

val fruits = listOf("蘋果", "香蕉", "橘子")

存取元素

val firstFruit = fruits[0]
println("第一個水果是 $firstFruit")

範例:檢查元素是否存在

val hasBanana = "香蕉" in fruits
if (hasBanana) {
    println("有香蕉")
} else {
    println("沒有香蕉")
}

優點:

缺點:

MutableList – 可變列表

基本用法

MutableList 是一個可變(mutable)的列表,可以動態增減元素。

val mutableFruits = mutableListOf("蘋果", "香蕉", "橘子")

新增元素

mutableFruits.add("葡萄")
println("新增後的水果列表: $mutableFruits")

移除元素

mutableFruits.remove("香蕉")
println("移除後的水果列表: $mutableFruits")

優點:

缺點:

注意事項

  1. List是唯讀的: 在Kotlin中,List 是唯獨的,不僅不能修改大小,也不能修改值。而 MutableLis則允許新增、刪除元素,以及修改元素的值。
  2. Nullable元素: Kotlin的List和MutableList可以包含可為空(nullable)的元素。
val nullableList: List<String?> = listOf("apple", "banana", null)
  1. 集合操作: Kotlin提供了豐富的集合操作,例如 filtermap 等,這些操作可以簡化對列表的處理,在下一篇文章中會更詳細的介紹常用方法。
val numbers = listOf(1, 2, 3, 4, 5)
val squaredNumbers = numbers.map { it * it }
println("原始數字: $numbers")
println("平方數字: $squaredNumbers")

總結

Kotlin提供了這些集合類型,以滿足不同的需求。根據特定的情境和操作需求選擇合適的集合類型,以確保程式碼的效能和可讀性。

Like