gpt4 book ai didi

java - Map 的 getOrDefault

转载 作者:行者123 更新时间:2023-11-30 07:53:54 26 4
gpt4 key购买 nike

像这样尝试获取 Map 的 getOrDefault:

String test = map.getOrDefault("test", "")

但它给了我一个错误“必需的?但有一个字符串”。无论如何要解决这个问题?

最佳答案

Map<String, ?> 的值可以是任何类型。

getOrDefault要求第二个参数与值的类型相同;除 null 外没有其他值这可以满足这个,因为你不知道那个 ?String , Integer或其他。

因为您只是从映射中检索一个值,所以您可以安全地转换为 Map<String, Object>。 :

Object value = ((Map<String, Object>) map).getOrDefault("key", "");

这是因为您没有将任何值放入映射中,这会使以后的调用变得不安全;并且任何值类型都可以安全地存储在 Object 中引用。

关于java - Map<String, ?> 的 getOrDefault,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44465854/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com