【发布时间】:2011-11-11 04:48:39
【问题描述】:
是否可以检查给定的 Object 项是否可以转换为某个类?有没有不抛出异常的方法?
【问题讨论】:
-
你指的是
instanceof运算符吗?
是否可以检查给定的 Object 项是否可以转换为某个类?有没有不抛出异常的方法?
【问题讨论】:
instanceof运算符吗?
是的,Class.isInstance(Object) 和相关的Class.isAssignableFrom(Class)
例子:
Object x = "foo";
Integer.class.isInstance(x); // => false
Integer.class.isAssignableFrom(x.getClass()); // => false
编辑:您说“方法”,所以我假设您的意思是 API 方法,但如果您在编译时知道类型,那么您可以简单地使用
x instanceof Integer // => false
【讨论】: