Ответ 1
Я не совсем уверен, что вы хотите, но если вы хотите иметь целочисленное значение, которое также может быть объявлено null
, вы, вероятно, захотите использовать класс Integer
:
Integer nullableInteger = 1;
nullableInteger = null;
System.out.println(nullableInteger); // "null"
Существуют соответствующие классы для каждого примитива: Character
, Long
, Double
, Byte
и т.д. Все числовые классы "стандартной библиотеки" расширяют Number
.
Обратите внимание, что Java autoboxes эти объекты автоматически с JDK 1.5, поэтому вы можете использовать и объявлять их так же, как примитивы (нет необходимости, например, new Integer(1)
"). Поэтому, хотя они являются технически объектами (и, следовательно, расширяют класс Object
, который не имеет тип примитива int
), вы можете сделать с ними базовую арифметику. Они преобразуются в операции объекта во время компиляции.