方案是一个变量:铸造类型为“Object”一类“级”
Object anObj="7";
Object anotherObject="7.77";
Class aClass=Class.forName("java.lang.Integer");
Class anotherClass=Class.forName("java.lang.Double");
我想强制转换anObj
到aClass
型和anotherObject
到anotherClass
型。
的值类变量aClass
和anotherClass
可能会有所不同,所以我不希望他们使用parseXXX()
方法铸造...
我尝试使用aClass.cast(anObj);
但它抛出InstantiationException
任何人可以帮助我吗?
在此先感谢。 ArK。!
这些类型转换将失败,因为对象是字符串 - 你不能投* *字符串到'整数“或”双“。这就是为什么'cast'失败;你需要停止思考转换,并开始考虑调用构造函数或方法来执行字符串转换。 – 2012-03-09 06:58:16
乔恩是对的;如果Object实际上是一个Integer,但由于某种原因在Object变量中,则只能向下转换(如从Object到Integer)。 – Tom 2012-03-09 07:05:47
谢谢你和汤姆... – arunrathnakumar 2012-05-29 06:33:32