首页 > 代码库 > 详解Integer.toString(int i)方法和String.valueOf(int i)方法

详解Integer.toString(int i)方法和String.valueOf(int i)方法

通过查看String类的源码:

public static String valueOf(int i) {
        return Integer.toString(i);
    }

我们可以看到,String.valueOf(int i)其实是调用了Integer.toString(int i)方法的。

再次通过查看Integer类的源码我们可以看到:

public static String toString(int i) {
        if (i == Integer.MIN_VALUE)
            return "-2147483648";
        int size = (i < 0) ? stringSize(-i) + 1 : stringSize(i);
        char[] buf = new char[size];
        getChars(i, size, buf);
        return new String(buf, true);
    }

除了当参数i=-2^31时,值返回"-2147483648"外,当i=其他值时,都返回一个新的Stirng对象(new String(buf,true))。

详解Integer.toString(int i)方法和String.valueOf(int i)方法