Java中如何进行类型判断呢?
下文笔者讲述java中类型判断的方法分享,如下所示
实现思路: 方式1:使用 instanceof即可进行对象是何种类型进行判断 方式2:使用 Class.isInstance 也可对类型进行判断 方式3:使用 Class.isAssignableFrom对调用者的类型 方式4:使用 Class.isPrimitive判断是否为基础类型
instanceof
instanceof是Java的一个运算符,用来判断一个对象是否为一个类的实例 。用法:例:
boolean isInstance = obj instanceof Class 其中obj为一个对象实例 Class为类名或一个接口名 当obj为Class的实例或其子类实例 或其接口的实现类实例,都返回true,否则返回false 注意事项: obj必须为引用类型,不能为基础类型,否则会产生编译错误 int integer = 9999; //编译时会报错 boolean isInstance = integer instanceof Number
Class.isInstance
// Class.isInstance 等效于instanceof 操作符 boolean ret = entity instanceof UserInfo; boolean isInstance = UserInfo.class.isInstance(entity); Class.isInstance等效于instanceof操作符 当参数不为null且可以在不引发ClassCastException的情况下 成功将其强制转换为左边的引用类型时将返回true
Class.isAssignableFrom
该方法的调用者和参数都是Class对象 调用者为父类,参数为本身或者其子类 boolean assignableFrom = list.class.isAssignableFrom(ArrayList.class);
Class.isPrimitive
此方法用于判断Class是否为 原始类型(boolean、char、byte、short、int、long、float、double) //true boolean primitive = int.class.isPrimitive();
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。