有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

我试图使用java反转一个int,由于某种原因,当给定0001234时,我的程序不知怎么地将其读取为668并返回886

public static int reverseInt(int x) {
        String t = Integer.toString(x);
        StringBuilder sb = new StringBuilder(t);       
        sb = sb.reverse();       
        String b = sb.toString();        
        x = Integer.valueOf(b);
        return x;
    }

这是我的密码和密码

        int x = 1234000;
        int b = 24230100;
        int g = 001234;
        int s = reverseInt(x);
        int q = reverseInt(b);
        int y = reverseInt(g);
        System.out.println("this is y:" + y);

这是我的测试仪。g是需要反转的int值,但它被读取为668。知道为什么吗? 为测试添加打印语句时:

        String t = Integer.toString(x);
        System.out.println(x);
        StringBuilder sb = new StringBuilder(t);       
        sb = sb.reverse();       
        String b = sb.toString();   
        System.out.println(b);     
        x = Integer.valueOf(b);
        return x;
    }

我对g的初始打印是668,第7行的打印返回866


共 (0) 个答案