如何将StringBuffer类型转换为Int类型
Integer 类 parseInt()
StringBuffer sb = new StringBuffer("123");
return Integer.parseInt(sb.toString());
Integer 类 valueOf()
StringBuffer sb = new StringBuffer("123");
return Integer.valueOf(sb.toString());
区别
他们返回类型的不同是最大的原因:
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))会翻译错误.
网友评论