valueOf
返回的是包装类,参数可是String也可以是本类
parse...
返回的是基本类型,参数只能是String
在进行类型转换时:
如果想获得基本类型,就使用parse...
如果想获得包装类型,就用valueOf
此外,在从基本类型获得包装类型时,尽量使用valueOf
来代替new
获得包装类型,因为valueOf
使用了缓存.
public static Integer valueOf(int i) {
if (i >= IntegerCache.low && i <= IntegerCache.high)
return IntegerCache.cache[i + (-IntegerCache.low)];
return new Integer(i);
}
参考:
https://blog.csdn.net/xiong9999/article/details/87800317