Integer i = new Integer("0x10"); 编译不报错,为什么运行会出异常啊,不可以转换吗?

解决方案 »

  1.   

    public Integer(String s)
            throws NumberFormatException
    Constructs a newly allocated Integer object that represents the int value indicated by the String parameter. The string is converted to an int value in exactly the manner used by the parseInt method for radix 10.
      

  2.   

    well brother , thank u a lot, your english is awsome!
      

  3.   

    Integer i = new Integer(0x10);
    那个是字符串,去掉双引号...........
      

  4.   

    其实你可以查阅API 文档就行了:Integer实例化的具体实现过程:
    Integer
    public Integer(int value)构造一个新分配的 Integer 对象,它表示指定的 int 值。 参数:
    value - Integer 对象表示的值。--------------------------------------------------------------------------------Integer
    public Integer(String s)
            throws NumberFormatException构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值。使用与 parseInt 方法(对基数为 10 的值)相同的方式将该字符串转换成 int 值。 参数:
    s - 要转换为 Integer 的 String。 
    抛出: 
    NumberFormatException - 如果 String 不包含可解析的整数。
    另请参见:
    parseInt(java.lang.String, int)Integer i = new Integer(55);
    Integer s = new Integer(zhaoming);
      

  5.   

    API说了是十进制的数字字符串转换成int,0x10是十六进制