Tôi đang thử Kotlin và tôi đã gặp phải một vấn đề nhỏ mà tôi không thể giải quyết. Khi tôi có việc xây dựng sau tôi có thể đưa các yếu tố vào bản đồ:Đưa phần tử vào HashMap với giao diện Bản đồ
val map = HashMap<String, String>()
map["asd"] = "s"
map.put("34", "354")
Tuy nhiên khi tôi tạo ra một bản đồ với giao diện Map
Tôi chỉ có thể đọc chúng, những gì tôi đang làm sai?
val map: Map<String, String> = HashMap<String, String>();
map.put("24", "34") //error
map["23"] = "23" //error
Hoặc có thể tôi đang nhầm lẫn điều gì đó về giao diện trong Kotlin?
Đến từ Java, điều quan trọng là phải nhớ Map đó không đến từ java.util.Map nhưng từ Map được định nghĩa trong Collections.kt. Là một người mới của Kotlin, tôi cũng bị phát hiện bởi điều này. Như đã đề cập ở trên Bản đồ là chỉ đọc; để thay đổi bản đồ, hãy sử dụng MutableMap. Ngoài ra còn có các phương pháp trợ giúp để tạo các bản đồ khác nhau trong Maps.kt, ví dụ: hashMapOf, v.v. –