Menu
CoddyTech

List và MutableList

Thuộc phần Kiến thức nền tảng trong hành trình Kotlin của Coddy. Bài học 67 trên 93.

Đến giờ, bạn đã làm việc với các biến riêng lẻ chứa từng giá trị. Nhưng nếu bạn cần lưu một tập hợp các mục, chẳng hạn như danh sách tên hoặc một dãy số thì sao? Khi đó, danh sách sẽ hữu ích.

Kotlin cung cấp hai kiểu danh sách: List và MutableList. Điểm khác biệt chính là bạn có thể sửa đổi danh sách sau khi tạo hay không.

List chỉ cho phép đọc. Giao diện của nó không cung cấp các thao tác thêm, xóa hoặc thay thế phần tử. Điều này không đảm bảo tính bất biến sâu: cùng một đối tượng có thể thay đổi thông qua một tham chiếu khác:

val fruits = listOf("Apple", "Banana", "Cherry")
val numbers = listOf(1, 2, 3, 4, 5)

MutableList cho phép chỉnh sửa. Bạn có thể thêm phần tử mới, xóa phần tử hiện có hoặc cập nhật giá trị:

val fruits = mutableListOf("Apple", "Banana")
fruits.add("Cherry")  // Giờ chứa: Apple, Banana, Cherry

Dùng listOf() khi dữ liệu không nên thay đổi và dùng mutableListOf() khi bạn cần linh hoạt. Sự khác biệt này giúp ngăn việc vô tình sửa đổi dữ liệu và làm rõ ý định trong code.

challenge icon

Thử thách

Trung bình

Tạo một danh sách chỉ đọc có tên colors, chứa ba chuỗi: "Red", "Green" và "Blue".

Sau đó, tạo một danh sách có thể thay đổi có tên numbers, ban đầu chứa hai số nguyên: 10 và 20.

Thêm giá trị 30 vào danh sách numbers.

Cuối cùng, in hai danh sách ra các dòng riêng biệt theo thứ tự sau:

  1. Danh sách colors
  2. Danh sách numbers

Tự làm thử

fun main() {
    // TODO: Tạo danh sách (list) chỉ đọc tên là 'colors' gồm "Red", "Green", "Blue"
    
    // TODO: Tạo danh sách có thể thay đổi tên là 'numbers' gồm 10 và 20
    
    // TODO: Thêm 30 vào danh sách numbers
    
    // TODO: In hai danh sách trên hai dòng riêng (colors trước, rồi đến numbers)
}
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Kiến thức nền tảng

Tự luyện tập: Playground Kotlin