You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Swift字典操作map[x]!.append(product)作用说明及Kotlin实现问询

解答

Swift语句map[x]!.append(product)的作用

你给出的map是键为String类型、值为可变字符串数组[String]类型的可变字典,这条语句的具体行为如下:

  • 第一步通过键x从字典中查询对应的字符串数组值
  • 后缀!是强制解包操作,代表你默认x一定在字典中存在对应非空值,如果x对应的键不存在,会直接触发运行时崩溃
  • 最后调用append方法,把字符串变量product追加到取出的数组末尾

对应Kotlin实现写法

Kotlin中同类型的字典定义为MutableMap<String, MutableList<String>>,可以根据场景选择两种实现:

  1. 和原Swift语句行为完全对齐(强制要求键必须存在,不存在直接抛出空指针异常)的写法:
map[x]!!.add(product)

这里的!!等价于Swift的强制解包!,add方法等价于Swift的append方法。
2. 更安全的通用写法(键不存在时自动初始化空列表,避免崩溃):

map.getOrPut(x) { mutableListOf() }.add(product)

getOrPut方法会在键x不存在时,自动执行Lambda创建空可变列表存入字典,再返回对应的列表对象,无需手动判空处理。

内容的提问来源于stack exchange,提问作者CodeThisAndThat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 20:06:00