Проверка экземпляра класса Long
На этом этапе мы рассмотрим класс Long в Java и научимся проверять, является ли объект экземпляром класса Long.
В Java примитивные типы данных, такие как long, не являются объектами. Однако Java предоставляет обертки (wrapper classes) для каждого примитивного типа, и Long является оберткой для примитивного типа long. Обертки позволяют рассматривать примитивные значения как объекты, что полезно во многих ситуациях, например, при работе с коллекциями.
Для проверки, является ли объект экземпляром определенного класса, мы используем оператор instanceof. Оператор instanceof - это бинарный оператор, используемый для проверки, является ли объект экземпляром класса, подкласса или интерфейса.
Создадим простую Java-программу, чтобы показать, как использовать оператор instanceof с классом Long.
-
Откройте файл HelloJava.java в редакторе WebIDE, если он еще не открыт.
-
Замените все содержимое файла следующим кодом:
public class HelloJava {
public static void main(String[] args) {
// Create a Long object
Long myLong = 12345L;
// Create an Integer object
Integer myInteger = 67890;
// Check if myLong is an instance of Long
if (myLong instanceof Long) {
System.out.println("myLong is an instance of Long.");
} else {
System.out.println("myLong is not an instance of Long.");
}
// Check if myInteger is an instance of Long
if (myInteger instanceof Long) {
System.out.println("myInteger is an instance of Long.");
} else {
System.out.println("myInteger is not an instance of Long.");
}
}
}
В этом коде:
- Мы создаем объект
Long с именем myLong со значением 12345L. Суффикс L указывает, что это литерал типа long.
- Мы создаем объект
Integer с именем myInteger со значением 67890.
- Мы используем оператор
instanceof для проверки, является ли myLong экземпляром Long.
- Мы используем оператор
instanceof для проверки, является ли myInteger экземпляром Long.
-
Сохраните файл (Ctrl+S или Cmd+S).
-
Скомпилируйте программу, выполнив следующую команду в терминале:
javac HelloJava.java
Если компиляция прошла успешно, вы не увидите никакого вывода.
-
Запустите скомпилированную программу:
java HelloJava
Вы должны увидеть следующий вывод:
myLong is an instance of Long.
myInteger is not an instance of Long.
Этот вывод подтверждает, что myLong, который мы создали как объект Long, действительно является экземпляром класса Long, в то время как myInteger, созданный как объект Integer, не является.