假设我有一个像这样的对象:
Public Class Test{
int a;
}
在我的程序中的某个时刻,我想检查是否设置了属性 a。我知道如果我使用 Integer 而不是 int 作为属性的类型,我可以执行以下操作:
if(test.a!=null)
...;
但是,如果我将 int 保留在那里并使用它来检查:
if(test.a!=0)
...;
一个问题是我无法区分零值和未设置值,但在我的程序中它们是相同的,因为有效值都不同于 0。此外,使用 int 简化了我以后需要做的事情开启,例如使用 == 进行比较。
那么在这里使用 int 会很好,还是总是首选 Integer ?