Sto provando Kotlin e ho riscontrato un piccolo problema che non riesco a risolvere. Quando ho la seguente costruzione posso mettere gli elementi della mappa:Mettere l'elemento in HashMap con l'interfaccia Map
val map = HashMap<String, String>()
map["asd"] = "s"
map.put("34", "354")
Tuttavia quando creo una mappa con l'interfaccia Map
posso solo leggerle, quello che sto facendo di sbagliato?
val map: Map<String, String> = HashMap<String, String>();
map.put("24", "34") //error
map["23"] = "23" //error
O forse sto confondendo qualcosa sulle interfacce in Kotlin?
Venendo da Java, è importante ricordare che mappa non proviene da java.util.Map ma dalla mappa definita in Collections.kt. Come novellino di Kotlin, anch'io ne sono stato sorpreso. Come accennato in precedenza, la mappa è di sola lettura; per cambiare la mappa usa MutableMap. Sono disponibili anche metodi di supporto per creare mappe diverse in Maps.kt, ad es. HashMapOf ecc –