gpt4 book ai didi

java - 如果为 null,则 TObjectIntMap.get() 返回 0

转载 作者:太空宇宙 更新时间:2023-11-04 06:10:26 25 4
gpt4 key购买 nike

我正在使用 trove 库来创建 HashMap

http://trove.starlight-systems.com/ 

我正在使用的类是 TObjectIntMap,其中我必须使用函数 get。问题是如果两种情况 get 返回 0

1-如果指定键的值为零

2-如果 key 不存在

例如下面的代码

TObjectIntMap<String> featuresMap = new TObjectIntHashMap<String>();

if(String.valueOf(featuresMap.get("B")) == null)
System.out.println("NULL");
else
System.out.println("NotNull");


System.out.println(featuresMap.get("B"));

程序将打印以下内容

1- NotNull:因为它变为零。虽然键“B”还没有设置

2- 零:featuresMap.get("B") 返回零而不是 null。

我已经在下面的链接中检查了他们的文档,他们解决了一个错误。所以 get 实际上返回零而不是 null,因为 int 不能为 null。

https://bitbucket.org/robeden/trove/issue/43/incorrect-javadoc-for-tobjectintmapget

现在我的问题是:在这种情况下如何区分零和 Null。他们有办法解决这个问题吗?

最佳答案

试试他们的containsKey方法。如果值返回 0,则使用该方法检查映射是否包含该键 - 如果包含,则该键的值确实为 0。如果不包含,则该键未设置。

关于java - 如果为 null,则 TObjectIntMap.get() 返回 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28813953/

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