I'm not entirely sure what you want, but if you want to have an integer value that also can be declared null
, you probably want to use the Integer
class:
Integer nullableInteger = 1;
nullableInteger = null;
System.out.println(nullableInteger); // "null"
There are corresponding classes for each primitive: Character
, Long
, Double
, Byte
, etc. The 'standard library' numeric classes all extend the Number
class.
Note that Java autoboxes these objects automatically since JDK 1.5, so you can use and declare them just like the primitives (no need for e.g. "new Integer(1)
"). So, although they are technically objects (and, therefore, extend the Object
class, which the primitive int
type does not), you can do basic arithmetics with them. They are converted to object operations at compile time.