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


当前回答

不可能做到。int不是一个对象,它是一个基本类型。你可以将它转换为Integer,然后获取int。

 Integer i = (Integer) o; // throws ClassCastException if o.getClass() != Integer.class

 int num = i; //Java 1.5 or higher

其他回答

参考代码:

public class sample 
{
  public static void main(String[] args) 
  {
    Object obj=new Object();
    int a=10,b=0;
    obj=a;
    b=(int)obj;

    System.out.println("Object="+obj+"\nB="+b);
  }
}

如果你想把字符串对象转换成整数… 你可以简单地传递为:

 int id = Integer.valueOf((String) object_name);

希望这对你有帮助:-)

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

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

so divide1=me.getValue()/2;

int divide1 = (Integer) me.getValue()/2;
@Deprecated
public static int toInt(Object obj)
{
    if (obj instanceof String)
    {
         return Integer.parseInt((String) obj);
    } else if (obj instanceof Number)
    {
         return ((Number) obj).intValue();
    } else
    {
         String toString = obj.toString();
         if (toString.matches("-?\d+"))
         {
              return Integer.parseInt(toString);
         }
         throw new IllegalArgumentException("This Object doesn't represent an int");
    }
}

正如你所看到的,这不是一个非常有效的方法。你只需要确定你所拥有的对象类型。然后以正确的方式将其转换为int型。