Android 如何在Kotlin中向地图添加新元素?

Android 如何在Kotlin中向地图添加新元素?,android,kotlin,Android,Kotlin,如何添加具有相同第一个键的元素以映射并保存每个元素 ''' var records=mutableMapOf() 记录.put(1,可变映射对(2,列表对(“第一”)) 记录.put(1,可变映射(Pair)(3,listOf(“second”)) ''映射每个键只能有一个值,如果您添加另一个已存在键的条目,它将覆盖它。您需要一个值类型,它是一个集合(如List或Set),您可以将多个内容放入其中 假设您想使用Int键来存储成对的项目,您将需要可变映射(或集合,您将不会得到重复项,而且通常是无

如何添加具有相同第一个键的元素以映射并保存每个元素

'''

var records=mutableMapOf()
记录.put(1,可变映射对(2,列表对(“第一”))
记录.put(1,可变映射(Pair)(3,listOf(“second”))

''

映射每个键只能有一个值,如果您添加另一个已存在键的条目,它将覆盖它。您需要一个值类型,它是一个集合(如
List
Set
),您可以将多个内容放入其中

假设您想使用
Int
键来存储
成对的项目
,您将需要
可变映射
(或
集合
,您将不会得到重复项,而且通常是无序的)

您需要
获取
密钥的集合,然后添加到其中(或您正在执行的任何操作):

var records=mutableMapOf()
//如果此键尚不存在空列表,则会创建一个新的空列表
records.getOrPut(1){mutableListOf()}.add(对(2,“第一”))
records.getOrPut(1){mutableListOf()}.add(3到“second”)//另一种配对方法
println(记录)
>>{1=[(2,第一),(3,第二)]}


这有点冗长,所以您可能希望制作一些漂亮的
addRecord(key,value)
etc函数,使您能够更轻松地访问这些内部列表

映射每个键只能有一个值,如果您添加另一个具有已存在键的条目,它将覆盖它。您需要一个值类型,它是一个集合(如
List
Set
),您可以将多个内容放入其中

假设您想使用
Int
键来存储
成对的项目
,您将需要
可变映射
(或
集合
,您将不会得到重复项,而且通常是无序的)

您需要
获取
密钥的集合,然后添加到其中(或您正在执行的任何操作):

var records=mutableMapOf()
//如果此键尚不存在空列表,则会创建一个新的空列表
records.getOrPut(1){mutableListOf()}.add(对(2,“第一”))
records.getOrPut(1){mutableListOf()}.add(3到“second”)//另一种配对方法
println(记录)
>>{1=[(2,第一),(3,第二)]}


<>这有点冗长,所以你可能想制作一些好的<代码> AddioRead(key,value)< /Cuff>等函数,这些函数让你更容易地访问这些内部列表

如果你正在创建嵌套的映射,你可能想考虑实现一个数据类。此外,您正在尝试将
1
(与
Int
)映射到
对(2,listOf(“first”)
。。如果您正在创建嵌套的映射,MapYou可能想考虑实现数据类。此外,您正在尝试将
1
(与
Int
)映射到
对(2,listOf(“first”)
。。它本身不是一个
映射
        var records = mutableMapOf<Int, Map<Int, List<String>>>()
        records.put(1, mutableMapOf(Pair(2, listOf<String>("first"))))
        records.put(1, mutableMapOf(Pair(3, listOf<String>("second"))))
var records = mutableMapOf<Int, MutableList<Pair<Int, String>>>()
// this creates a new empty list if one doesn't exist for this key yet
records.getOrPut(1) { mutableListOf() }.add(Pair(2, "first"))
records.getOrPut(1) { mutableListOf() }.add(3 to "second") // another way to make a Pair
println(records)

>> {1=[(2, first), (3, second)]}