Skip to Content

Mảng (Array) trong Kotlin

1. Giới thiệu

Array trong Kotlin là collection có kích thước cố định, lưu trữ các phần tử cùng kiểu.

2. Tạo Array

fun main() { // Với arrayOf val numbers = arrayOf(1, 2, 3, 4, 5) val names = arrayOf("Alice", "Bob", "Charlie") // Array rỗng val empty = emptyArray<Int>() // Array với kích thước val zeros = Array(5) { 0 } // [0, 0, 0, 0, 0] }

3. Primitive Arrays

fun main() { // Hiệu quả hơn cho primitive types val intArray = intArrayOf(1, 2, 3) val doubleArray = doubleArrayOf(1.0, 2.0, 3.0) val boolArray = booleanArrayOf(true, false) val charArray = charArrayOf('a', 'b', 'c') // Tạo với kích thước val arr = IntArray(5) // [0, 0, 0, 0, 0] val arr2 = IntArray(5) { it * 2 } // [0, 2, 4, 6, 8] }

4. Truy cập phần tử

fun main() { val arr = arrayOf(10, 20, 30, 40, 50) println(arr[0]) // 10 println(arr[4]) // 50 println(arr.first()) // 10 println(arr.last()) // 50 // Thay đổi giá trị arr[0] = 100 println(arr[0]) // 100 }

5. Duyệt Array

fun main() { val arr = arrayOf("a", "b", "c") // for-in for (item in arr) { println(item) } // with index for ((index, value) in arr.withIndex()) { println("$index: $value") } // forEach arr.forEach { println(it) } // forEachIndexed arr.forEachIndexed { i, v -> println("$i: $v") } }

6. Thuộc tính và methods

fun main() { val arr = arrayOf(3, 1, 4, 1, 5, 9) println(arr.size) // 6 println(arr.isEmpty()) // false println(arr.contains(4)) // true println(arr.indexOf(1)) // 1 println(arr.sum()) // 23 println(arr.average()) // 3.83... }

7. Sắp xếp và đảo ngược

fun main() { val arr = arrayOf(3, 1, 4, 1, 5) // Không thay đổi mảng gốc val sorted = arr.sortedArray() val reversed = arr.reversedArray() // Thay đổi mảng gốc arr.sort() arr.reverse() }

8. Chuyển đổi

fun main() { val arr = arrayOf(1, 2, 3) // Array -> List val list = arr.toList() // Array -> Set val set = arr.toSet() // List -> Array val backToArray = list.toTypedArray() }

9. 2D Array

fun main() { // Mảng 2 chiều val matrix = Array(3) { IntArray(4) } // 3x4 matrix[0][0] = 1 matrix[1][2] = 5 // Khởi tạo với giá trị val grid = arrayOf( intArrayOf(1, 2, 3), intArrayOf(4, 5, 6), intArrayOf(7, 8, 9) ) // Duyệt for (row in grid) { for (cell in row) { print("$cell ") } println() } }

📝 Tóm tắt

  • arrayOf() tạo array với giá trị
  • IntArray, DoubleArray cho primitives
  • Index bắt đầu từ 0
  • Array có kích thước cố định
  • Dùng toList() để convert sang List
Last updated on