假设我们有一张地图:
val charToCount = mapOf('a', 3)
Run Code Online (Sandbox Code Playgroud)
任务是3通过相应的键检索值。问题是map.get(...)返回可空类型T?而不是T. 如果可以保证映射中存在键和相应的值,那么将值转换为不可为空类型的最佳实践是!= null什么?
在我的头顶有两种方法:
val count = charToCount['a']!!val count = charToCount['a'] ?: error("...")但两者似乎都不简洁。有没有更好的方法来消除可空类型?
合适的方法是
val count: Int = charToCount.getValue('a')
Run Code Online (Sandbox Code Playgroud)
...根据其文档,“如果地图中没有这样的键,则会引发异常”。
对不起,如果你希望更简洁;如果你想要一些简短的东西,你不可能打败!!。
| 归档时间: |
|
| 查看次数: |
59 次 |
| 最近记录: |