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


当前回答

你不能。int不是Object。

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

其他回答

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

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

希望这对你有帮助:-)

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

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

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

我在处理来自GSON的数据时使用一行程序:

int i = object != null ? Double.valueOf(object.toString()).intValue() : 0;

我们可以使用下面的代码在Java中转换一个对象为Integer。

int value = Integer.parseInt(object.toString());

@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型。