温馨提示×

Java instanceof的用法是什么

小亿
108
2023-10-20 07:34:57
栏目: 编程语言

Java中的instanceof是一个运算符,用于判断一个对象是否是特定类的实例,或者是特定类的子类的实例。

它的语法是:

对象 instanceof 类型

如果对象是指定的类型,结果为true;否则,结果为false。

例如,假设有一个Animal类和一个Dog类,Dog类是Animal类的子类。我们可以使用instanceof运算符来判断一个对象是否为Animal类的实例或者Dog类的实例。

Animal animal = new Animal();
Dog dog = new Dog();
boolean isAnimal = animal instanceof Animal; // true
boolean isDog = dog instanceof Dog; // true
boolean isAnimal2 = dog instanceof Animal; // true,因为Dog是Animal的子类
boolean isString = "Hello" instanceof String; // true
boolean isInteger = 5 instanceof Integer; // false

注意,如果使用instanceof运算符判断一个对象是否是它的父类的实例,结果也为true。这是因为子类的实例也是父类的实例。

Dog dog = new Dog();
boolean isAnimal = dog instanceof Animal; // true

此外,如果对象为null,使用instanceof运算符会返回false。

Animal animal = null;
boolean isAnimal = animal instanceof Animal; // false

0