检查null的int铸件



我写了一些这样的代码:

Map<String, Object> map;
-- some code --
int result = (int) map.get("some_integer");

如果没有一个名为some_integer的键,则map.get("some_integer")将返回null。然后,将其施放为int,不能是null

我的问题是:

  1. (int) map.get("some_integer")将返回什么?
  2. 如何使用result检查null

如果您尝试将null施放到int,则会获得NullPointerException

如果要取消检查它,则可以使用IntegerObject变量。

Integer r = (Integer) map.get("some_integer");
if (r==null) {
   // whatever you want to do in this case
} else {
   int result = r;
   // whatever you want to do with the result
}

您可以使用默认值:

Map map = new HashMap<String, Object> ();
map.put ("seven", new Integer(7));
Object o = map.getOrDefault ("seven", new Integer (0));

相关内容

  • 没有找到相关文章

最新更新