我如何在java中将对象转换为int型?


当前回答

对象变量;hastaId

Object hastaId = session.getAttribute("hastaID");

例如,将一个对象转换为int类型,即hasaid

int hastaID=Integer.parseInt(String.valueOf(hastaId));

其他回答

如果你的意思是将String转换为int,请使用Integer.valueOf("123")。

你不能将大多数其他对象强制转换为int型,因为它们没有int值。例如,XmlDocument没有int值。

如果对象最初被实例化为Integer,那么可以使用强制转换操作符(子类型)将其向下转换为int。

Object object = new Integer(10);
int i = (Integer) object;

注意,这只适用于至少使用带有自动装箱功能的Java 1.5,否则必须将i声明为Integer,然后对其调用intValue()。

但如果它最初根本不是作为Integer创建的,那么你就不能像这样向下转换。它将导致消息中带有原始类名的ClassCastException。如果通过String#valueOf()获得的对象的toString()表示一个语法上有效的整数(例如,只有数字,如果需要前面有一个负号),那么你可以使用integer #valueOf()或new integer()。

Object object = "10";
int i = Integer.valueOf(String.valueOf(object));

参见:

继承和强制转换教程

必须将其强制转换为Integer (int的包装类)。然后,您可以使用Integer的intValue()方法来获取内部整型。

假设对象是一个Integer对象,那么你可以这样做:

int i = ((Integer) obj).intValue();

如果对象不是Integer对象,则必须检测类型并根据其类型进行转换。

int i = (Integer) object; //Type is Integer.

int i = Integer.parseInt((String)object); //Type is String.