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,DoubleArraycho primitives- Index bắt đầu từ 0
- Array có kích thước cố định
- Dùng
toList()để convert sang List
Last updated on