首页 > 代码库 > 2017.4.14 java parseInt和valueof的区别
2017.4.14 java parseInt和valueof的区别
他们返回类型的不同是最大的原因:
static int parseInt(String s)
将字符串参数作为有符号的十进制整数进行分析。
static Integer valueOf(int i)
返回一个表示指定的 int 值的 Integer 实例。
static Integer valueOf(String s)
返回保持指定的 String 的值的 Integer 对象。
从返回值可以看出他们的区别 parseInt()返回的是基本类型int
而valueOf()返回的是包装类Integer Integer是可以使用对象方法的 而int类型就不能和Object类型进行互相转换
Integer.parseInt(chuan)返回值是int型的.
Integer.valueOf(chuan)返回值是Integer型的.把Integer赋值给int型的话,JRE会自己完成这些工作.
区别还是有的.如果你写一个方法的形参是int型的,比如:
void test(int a){
//todo:
};
当你调用这个方法的时候test(Integer.parseInt(chuan))会翻译通过,但test(Integer.valueOf(chuan))会翻译错误
java String.valueOf()的作用
在读取数据时需要对数据的强制转换,可采用String.valueOf(a),把a强制转换成字符串类型
有时候a本来就已经是字符串类型了,但是为了代码的严谨性,也会加入String.valueOf(a),这时String.valueOf(a)省略也不会出错的。
但有时会涉及到服务器的问题,所以还是加入String.valueOf(a)比较好。
使用 String.valueOf() 进行数据转换,如果被转换的数据为 null, 则这种方法将返回一个 "null"字符串
String) 方法进行转换时,如果被转换的数据为 null, 则返回 null 对象而不是一个 "null" 字符串。
2017.4.14 java parseInt和valueof的区别