Android开发——parseInt和valueof的区别

都是Integer的静态方法:

Integer.parseInt(str)是把一个数字字符串转化成int类型的数据

Integer.valueOf(str or num) 是把一个数字或者一个字符串转化为Integer类型的数据;

//parseInt 会抛出异常NumberFormatException
public static int parseInt(String s) throws NumberFormatException {
        return parseInt(s,10);
    }
 
//parseInt 这个源码太长就不贴了   有兴趣可自己百度
 public static int parseInt(String s, int radix)  throws NumberFormatException
    {
      
        return negative ? result : -result;
    }
 
//参数是数值类型的
 public static Integer valueOf(int i) {
        if (i >= IntegerCache.low && i <= IntegerCache.high)
            return IntegerCache.cache[i + (-IntegerCache.low)];
        return new Integer(i);
    }
//参数是字符串类型的
 public static Integer valueOf(String s) throws NumberFormatException {
        return Integer.valueOf(parseInt(s, 10));
    }

 

上一篇:数字型字符串 如何与 数字进行相互转换


下一篇:笔记-java基础巩固-侧重源码分析