A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© xbs783 中级黑马   /  2016-11-7 22:46  /  839 人查看  /  1 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

他们返回类型的不同是最大的原因:


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))会翻译错误.

1 个回复

倒序浏览
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马