我正在尝试用Java创建一个nullalble对象,但不知道如何做到这一点,在C#中这将是这样做的
int? someTestInt;
这允许我检查null,而在某些情况下我可以使用0值,这不总是可行的,因为某些执行路径允许0值
答案 0 :(得分:27)
我不完全确定你想要什么,但是如果你想要一个也可以声明为null
的整数值,你可能想要使用Integer
类:
Integer nullableInteger = 1;
nullableInteger = null;
System.out.println(nullableInteger); // "null"
每个基元都有相应的类:Character
,Long
,Double
,Byte
等。“标准库”数字类都扩展了{{3 }。class。
从JDK 1.5开始,请注意Java Number
这些对象,因此您可以像使用原语一样使用并声明(不需要例如“new Integer(1)
”)。因此,尽管它们在技术上是对象(因此,扩展Object
类,原始int
类型没有),您可以使用它们进行基本的算术运算。它们在编译时转换为对象操作。
答案 1 :(得分:3)
Java不支持可空的基元。如果希望能够存储空值,可以使用整数类型。
(这是这篇文章的副本: How to present the nullable primitive type int in Java?)
答案 2 :(得分:1)
也许在Java中尝试Integer类型。