Проверка на null
или значения по умолчанию
На этом этапе мы рассмотрим, как проверить переменные на null
или значения по умолчанию в Java. Понимание того, как обрабатывать null
, является ключевым аспектом в программировании на Java для предотвращения ошибок, таких как NullPointerException
. Также важно знать значения по умолчанию, так как они присваиваются переменным, если они не инициализированы явно.
В Java примитивные типы данных (например, int
, boolean
, double
и др.) имеют значения по умолчанию, в то время как ссылочные типы (например, String
, массивы, пользовательские классы) имеют значение по умолчанию null
.
Создадим простую Java-программу, которая демонстрирует проверку на null
и понимание значений по умолчанию.
-
Откройте файл HelloJava.java
в редакторе WebIDE. Если вы завершили предыдущую лабораторную работу, этот файл должен уже существовать в директории ~/project
.
-
Замените существующий код в файле HelloJava.java
следующим:
public class HelloJava {
static int defaultInt;
static boolean defaultBoolean;
static String defaultString;
public static void main(String[] args) {
System.out.println("Default int value: " + defaultInt);
System.out.println("Default boolean value: " + defaultBoolean);
System.out.println("Default String value: " + defaultString);
String myString = null;
System.out.println("My string value: " + myString);
// Example of checking for null
if (myString == null) {
System.out.println("My string is null.");
} else {
System.out.println("My string is not null.");
}
}
}
Рассмотрим новые части этого кода:
static int defaultInt;
: Мы объявляем статическую целочисленную переменную defaultInt
без ее инициализации. Поскольку это статическая переменная примитивного типа, ей будет присвоено значение по умолчанию.
static boolean defaultBoolean;
: Аналогично, объявляется статическая логическая переменная defaultBoolean
, которая получит значение по умолчанию.
static String defaultString;
: Объявляется статическая переменная типа String
с именем defaultString
. Поскольку String
является ссылочным типом, ее значением по умолчанию будет null
.
System.out.println("Default int value: " + defaultInt);
: Эта строка выводит значение по умолчанию для целого числа.
System.out.println("Default boolean value: " + defaultBoolean);
: Эта строка выводит значение по умолчанию для логического типа.
System.out.println("Default String value: " + defaultString);
: Эта строка выводит значение по умолчанию для строки.
String myString = null;
: Мы явно объявляем переменную типа String
с именем myString
и присваиваем ей значение null
.
System.out.println("My string value: " + myString);
: Эта строка выводит значение переменной myString
.
if (myString == null)
: Это условный оператор if
, который проверяет, равно ли значение переменной myString
null
. Это стандартный способ проверки, ссылается ли объект на null
.
-
Сохраните файл HelloJava.java
(Ctrl+S или Cmd+S).
-
Скомпилируйте программу в терминале:
javac HelloJava.java
Если ошибок нет, файл HelloJava.class
будет обновлен.
-
Запустите скомпилированную программу:
java HelloJava
Вы должны увидеть вывод, похожий на следующий:
Default int value: 0
Default boolean value: false
Default String value: null
My string value: null
My string is null.
Этот вывод показывает значения по умолчанию для int
(0), boolean
(false) и String
(null). Он также подтверждает, что наша переменная myString
действительно равна null
, и условный оператор if
правильно определил это.
Понимание null
и значений по умолчанию является фундаментальным этапом при написании надежного Java-кода. На следующем этапе мы рассмотрим тестирование с использованием различных типов данных.