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();
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


