Я использую библиотеку находки для создания хэша-картTObjectIntMap.get() Retruns 0, если нуль Trove
http://trove.starlight-systems.com/
Класса я использую TObjectIntMap, в котором я должен был использовать функцию получения. Вопрос заключается в том, что получить возвращает 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"));
программа напечатает следующий
1- NotNull: потому что он получает ноль. Хотя ключ «B» не был установлен
2- Zero: возврат объектов FeatureMap.get («B») равен нулю вместо нуля.
Я проверил их документацию по ссылке ниже, и это была ошибка, которую они решили. Таким образом, получите фактический возврат нуля вместо нуля, потому что int не может быть нулевым.
https://bitbucket.org/robeden/trove/issue/43/incorrect-javadoc-for-tobjectintmapget
Теперь мой вопрос: как дифференцировать нуль и нуль в этом случае. Является ли их способ обойти эту проблему.
Заранее спасибо
Да, это сработало! Спасибо alot –
Но мне действительно нужно ckeck, если возвращает ноль. Я могу проверить только «содержит ключ», правильно? –
И я действительно принял ответ :) –