Java中如何检测一个对象是否属于特定类的实例?
- 内容介绍
- 文章标签
- 相关推荐
本文共计398个文字,预计阅读时间需要2分钟。
一. instanceof 的作用instanceof 的作用是判断其左边的对象是否是其右边的类或其子类的实例。它也可以用来判断一个对象是否是特定类型的一个实例,返回 boolean 类型的数据。
二. 用法用法: boolean resultjavaboolean result=object instanceof ClassName;
一. 描述
instanceof
它的作用是判断其左边对象是否为其右边类的实例,也可以判断这个对象是否是这个特定类或者是它的子类的一个实例,返回boolean类型的数据。
二. 用法
boolean result = object instanceof classresult:布尔类型。
objec:必选项。任意对象表达式。
class :必选项。任意已定义的对象类。
三. 说明
如果 object 是 class 的一个实例,则 instanceof 运算符返回 true。如果 object 不是指定类的一个实例,或者 object 是 null,则返回 false。
四. 示例
import java.util.ArrayList;import java.util.HashMap;import java.util.Map;import java.util.TreeMap;public class Test { public static void main(String[] args) { Map<?, ?> map = new HashMap<>(); boolean flag = map instanceof Map; System.out.println("map是否为Map类型:" + flag); flag = map instanceof TreeMap; System.out.println("map是否为TreeMap类型:" + flag); flag = map instanceof HashMap; System.out.println("map是否为HashMap类型:" + flag); System.out.println("--------------------------------"); ArrayList<?> list = new ArrayList<>(); flag = list instanceof List; System.out.println("list是否为ArrayList类型:" + flag); System.out.println("--------------------------------"); List<?> listTwo = new ArrayList<>(); flag = listTwo instanceof List; System.out.println("listTwo是否为List类型:" + flag); flag = listTwo instanceof TreeList; System.out.println("listTwo是否为TreeList类型:" + flag); flag = listTwo instanceof ArrayList; System.out.println("listTwo是否为ArrayList类型:" + flag); }}输出结果:
本文共计398个文字,预计阅读时间需要2分钟。
一. instanceof 的作用instanceof 的作用是判断其左边的对象是否是其右边的类或其子类的实例。它也可以用来判断一个对象是否是特定类型的一个实例,返回 boolean 类型的数据。
二. 用法用法: boolean resultjavaboolean result=object instanceof ClassName;
一. 描述
instanceof
它的作用是判断其左边对象是否为其右边类的实例,也可以判断这个对象是否是这个特定类或者是它的子类的一个实例,返回boolean类型的数据。
二. 用法
boolean result = object instanceof classresult:布尔类型。
objec:必选项。任意对象表达式。
class :必选项。任意已定义的对象类。
三. 说明
如果 object 是 class 的一个实例,则 instanceof 运算符返回 true。如果 object 不是指定类的一个实例,或者 object 是 null,则返回 false。
四. 示例
import java.util.ArrayList;import java.util.HashMap;import java.util.Map;import java.util.TreeMap;public class Test { public static void main(String[] args) { Map<?, ?> map = new HashMap<>(); boolean flag = map instanceof Map; System.out.println("map是否为Map类型:" + flag); flag = map instanceof TreeMap; System.out.println("map是否为TreeMap类型:" + flag); flag = map instanceof HashMap; System.out.println("map是否为HashMap类型:" + flag); System.out.println("--------------------------------"); ArrayList<?> list = new ArrayList<>(); flag = list instanceof List; System.out.println("list是否为ArrayList类型:" + flag); System.out.println("--------------------------------"); List<?> listTwo = new ArrayList<>(); flag = listTwo instanceof List; System.out.println("listTwo是否为List类型:" + flag); flag = listTwo instanceof TreeList; System.out.println("listTwo是否为TreeList类型:" + flag); flag = listTwo instanceof ArrayList; System.out.println("listTwo是否为ArrayList类型:" + flag); }}输出结果:

