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


当前回答

你不能。int不是Object。

虽然整数是一个对象,但我怀疑这是你的意思。

其他回答

对象变量;hastaId

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

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

int hastaID=Integer.parseInt(String.valueOf(hastaId));
int[] getAdminIDList(String tableName, String attributeName, int value) throws SQLException {
    ArrayList list = null;
    Statement statement = conn.createStatement();
    ResultSet result = statement.executeQuery("SELECT admin_id FROM " + tableName + " WHERE " + attributeName + "='" + value + "'");
    while (result.next()) {
        list.add(result.getInt(1));
    }
    statement.close();
    int id[] = new int[list.size()];
    for (int i = 0; i < id.length; i++) {
        try {
            id[i] = ((Integer) list.get(i)).intValue();
        } catch(NullPointerException ne) {
        } catch(ClassCastException ch) {}
    }
    return id;
}
// enter code here

这段代码说明了为什么ArrayList很重要,以及为什么要使用它。简单地从Object转换int。可能会有帮助。

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

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

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

答:

int i = ( Integer ) yourObject;

如果你的对象已经是一个整数,它将顺利运行。即:

Object yourObject = 1;
//  cast here

or

Object yourObject = new Integer(1);
//  cast here

etc.

如果你的对象是其他类型的对象,你需要先将它(如果可能的话)转换为int类型:

String s = "1";
Object yourObject = Integer.parseInt(s);
//  cast here

Or

String s = "1";
Object yourObject = Integer.valueOf( s );
//  cast here

我猜你想知道为什么C或c++允许像操作数字一样操作对象指针,但在Java中不能以同样的方式操作对象引用。

Java中的对象引用不像C或c++中的指针……指针基本上是整数,你可以像操作其他int一样操作它们。引用是一种更具体的抽象,不能像指针那样被操作。