如何解决如何检查给定的对象是否是String中给定的类名的实例?
| 我有以下变量MyObj myObj = new MyObj();
String myString = \"myPackage.MyObj\";
MyObj
像这样
package myPackage;
class MyObj {
private String one;
private String two;
}
如何检查“ 3”是否是由字符串“ 4”表示的完全合格的类名的实例?
解决方法
您可以为此使用
Class#isInstance()
。
if (Class.forName(myString).isInstance(myObj)) {
// myObj is an instance of the class as specified by myString.
}
, 不确定我是否正确理解您,但这可能对您有帮助:
Number n = 42; //Integer,try 42L (Long)
String type = \"java.lang.Integer\";
//if(n instanceof type) //?!?
if(Class.forName(type).isAssignableFrom(n.getClass())) {
//...
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。