Tag: HashMap中

在Kotlin中将地图的值加1

我正在写一个函数来遍历一个集合,并find其中最常见的项目。 这是我到目前为止获取的值,并添加它们出现在集合中的次数。 我将这个值作为一个关键字放入一个地图中,并把它的值显示为它的值。 fun mostCommon(input: Collection): Set { var newMap: MutableMap = HashMap() for (item in input) { if (newMap.containsKey(item)) { //TODO: add 1 to value if key is found }else { newMap.put(item, 1) } } return emptySet() } 如果密钥已经存在,我无法find将值1加1的方法。 我试过这样做: newMap[item] +=1 但是我得到一个关于plusAssign(1)不允许在Nullable接收器上的错误。

在kotlin中转换地图的习惯方法?

在斯卡拉,这只是mapfunction。 例如,如果hashMap是一个字符串的hashMap,那么你可以执行以下操作: val result : HashMap[String,String] = hashMap.map(case(k,v) => (k -> v.toUpperCase)) 但是,在Kotlin中, map将地图变成了一个列表。 在Kotlin做同样的事情是否有一种惯用的方式?