将整数类型赋给int

时间:2014-11-18 13:47:02

标签: java types casting type-conversion

Integer分配给int时是否有任何问题(当然是运行时间)?

int x= Integer.class.cast(parameters.get("PO_PAGE_CNT"));

由于Integer是父类,而int是实例,我想在某些情况下我可能会在运行时获得ClassCastException或其他类型的异常。是不是?

4 个答案:

答案 0 :(得分:1)

假设parameters.get("PO_PAGE_CNT")返回Integer的实例,则此分配没有问题。

简单地写下来会更具可读性:

int x = (Integer) parameters.get("PO_PAGE_CNT");

int总是可以分配给Integer(Boxing),反之亦然(Unboxing)。

答案 1 :(得分:1)

没问题。有称为拳击和拆箱的概念。你可以关注link

答案 2 :(得分:1)

不,没有问题。整数值自动取消装箱到int值,反之亦然。

但有一个例外。如果parameters.get("PO_PAGE_CNT")返回null,您将获得NullPointerException,因为没有int等同于null

答案 3 :(得分:1)

没有问题。你是拳击和拆箱整数。如果要将整数解包为int

,则不会出现 ClassCastException