java - API 24 Android 以下设备的 getOrDefault 替代方法

标签 java android dictionary

我正在编写一个 Android 应用程序,我正在使用一个 Java 类,该类具有如下循环:

for (Set<I> itemset : candidateList2) {
    supportCountMap.put(itemset, supportCountMap.getOrDefault(itemset,0)+ 1);
}

我在方法上收到警告 Call requires API level 24(current min is 16):

supportCountMap.getOrDefault(itemset,0)+1);

此方法是否有任何变通方法可以在 SDK 版本低于 24 的手机上运行,​​例如 Marshmallow(23) 和 Lollipop(21)?

最佳答案

Kotlin:只需使用 elvis 运算符:

  val value = map[key] ?: 0

如果 map[key] 为 null,则该值为 0。

关于java - API 24 Android 以下设备的 getOrDefault 替代方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41211960/

相关文章:

java - 在 Springframework 2.5.6 中是否有可能在 ="session"范围内创建 session 创建对象

Android:使用 AppCompat V7 为按钮设置 Material 设计高度

java - 如何将引用(不可序列化)从一个 Activity 传递到另一个 Activity ?

java - map 对象同步

HTML 和谷歌地图

java - JVM 抛出 java.lang.OutOfMemoryError : heap space (File processing)

java - 模糊逻辑的具体例子

android - EventBus、register 和 registerSticky 方法

java - Mockito、JUnit 和 Map 嵌套在另一个类中

java - JBox2D 碰撞不弹跳