Java 如果为null,则tobjectionMap.get()返回0

Java 如果为null,则tobjectionMap.get()返回0,java,null,hashmap,integer,trove4j,Java,Null,Hashmap,Integer,Trove4j,我正在使用trove库创建哈希映射 http://trove.starlight-systems.com/ 我使用的类是TobjectionMap,我必须在其中使用函数get。 问题是,如果有两种情况,get返回0 1-如果指定键的值为零 2-如果密钥不存在 例如,在下面的代码中 TObjectIntMap<String> featuresMap = new TObjectIntHashMap<String>(); if(String.valueOf

我正在使用trove库创建哈希映射

http://trove.starlight-systems.com/ 
我使用的类是TobjectionMap,我必须在其中使用函数get。 问题是,如果有两种情况,get返回0

1-如果指定键的值为零

2-如果密钥不存在

例如,在下面的代码中

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"));

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

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

但是如果返回零,是否真的需要检查。我只能检查“包含密钥”,对吗?您可以选择订单。如果它确实包含一个键,您可能仍然需要获取它的值,以防您对非零值感兴趣。很高兴我能帮忙!您还可以通过构造函数中的配置来调整“noEntryValue”(返回的值)。例如,如果-1对您来说是一个更好的值,那么可以对其进行配置。请参阅:,浮点,整数)
https://bitbucket.org/robeden/trove/issue/43/incorrect-javadoc-for-tobjectintmapget