日期:2014-05-20  浏览次数:20774 次

String 转 Integer 这么小的程序还有异常??
Java code
class wrenwren
{
    public static void main(String args[])
    {
        String aa = "09";
        String bb = "0x3a";
        int c;

        c = Integer.decode(aa);
        System.out.println(c);

        c = Integer.decode(bb);
        System.out.println(c);
    
    }
}


为什么有异常呢??

------解决方案--------------------
前缀0 代表8进制 09 当然就错了,可以改成
String aa = "011";

------解决方案--------------------
String aa = "09";
改为
String aa = "9";

------解决方案--------------------
0前缀表示8进制的~不可能出09~
------解决方案--------------------
探讨
前缀0 代表8进制 09 当然就错了,可以改成
String aa = "011";

------解决方案--------------------
同意楼上

八进制,逢8进一。
怎么会出现9???