请帮我分析下:Integer.valueOf();和Integer.ParseInt()的区别,thanks!
今天不小心想把字符串转成整型是用错成Integer.valueOf(String);结果没报错,请问Integer.valueOf()是干什么用的方法!...
今天不小心想把字符串转成整型是用错成Integer.valueOf(String); 结果没报错,请问Integer.valueOf() 是干什么用的方法!
展开
6个回答
展开全部
Integer.valueOf()返回一个Integer对象
而Integer.ParseInt()是返回一个Int对象
两种对象不同
int是基本的数据类型,直接存数值;
Integer是int的封装类;integer 是对象,用一个引用指向这个对象;Integer 是一个类,是int的扩展,定义了很多的转换方法。
int和Integer都可以表示某一个数值;
int和Integer不能够互用,因为他们两种不同的数据类型;
举例说明
ArrayList al=new ArrayList();
int n=40;
Integer nI=new Integer(n);
al.add(n);//不可以
al.add(nI);//可以integer 是对象,用一个引用指向这个对象。
而Integer.ParseInt()是返回一个Int对象
两种对象不同
int是基本的数据类型,直接存数值;
Integer是int的封装类;integer 是对象,用一个引用指向这个对象;Integer 是一个类,是int的扩展,定义了很多的转换方法。
int和Integer都可以表示某一个数值;
int和Integer不能够互用,因为他们两种不同的数据类型;
举例说明
ArrayList al=new ArrayList();
int n=40;
Integer nI=new Integer(n);
al.add(n);//不可以
al.add(nI);//可以integer 是对象,用一个引用指向这个对象。
展开全部
Integer.ParseInt(String)是把字符串转化为int类型;
Integer.valueOf(String)是把字符串封装成为一个Integer对象。这个方法的优点是存在于缓存中,调用速度快占用资源少。推荐使用!!
其次就是Integer.valueOf(String)和new Integer()的区别。
前者在各方面都优于后者。所以编程中尽量使用前者避免使用后者。
Integer.valueOf(String)是把字符串封装成为一个Integer对象。这个方法的优点是存在于缓存中,调用速度快占用资源少。推荐使用!!
其次就是Integer.valueOf(String)和new Integer()的区别。
前者在各方面都优于后者。所以编程中尽量使用前者避免使用后者。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
/**
* 这是可运行的例子
*
* 总结: Integer.parseInt(s); 这个方法用的最多。不管是在swing编程还是web编程,返回的text 都是String类型的,所以需要
* int 类型的话,都需要转
*/
import javax.swing.JFrame;
public class TestFrame extends JFrame{
public static void main(String[] args) {
int i = 10;//这是基本数据类型.
Integer integer = Integer.valueOf(i);//将int 类型转换为Integer对象. 好处是Integer 里有integer.compareTo(anotherInteger)等等一些方法.
String s = "11";//这是数字字符串...
int ii = Integer.parseInt(s);//转换成int数据类型.
}
}
* 这是可运行的例子
*
* 总结: Integer.parseInt(s); 这个方法用的最多。不管是在swing编程还是web编程,返回的text 都是String类型的,所以需要
* int 类型的话,都需要转
*/
import javax.swing.JFrame;
public class TestFrame extends JFrame{
public static void main(String[] args) {
int i = 10;//这是基本数据类型.
Integer integer = Integer.valueOf(i);//将int 类型转换为Integer对象. 好处是Integer 里有integer.compareTo(anotherInteger)等等一些方法.
String s = "11";//这是数字字符串...
int ii = Integer.parseInt(s);//转换成int数据类型.
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
valueOf
public static Integer valueOf(String s)
throws NumberFormatException返回保存指定的 String 的值的 Integer 对象。将该参数解释为表示一个有符号的十进制整数, 就好像将该参数赋予 parseInt(java.lang.String) 方法一样。结果是一个表示字符串指定的整数值的 Integer 对象。
换句话说,该方法返回一个等于以下值的 Integer 对象:
new Integer(Integer.parseInt(s))
参数:
s - 要解析的字符串。
返回:
保存字符串参数表示的值的 Integer 对象。
抛出:
NumberFormatException - 如果字符串不能解析为一个整数。
public static Integer valueOf(String s)
throws NumberFormatException返回保存指定的 String 的值的 Integer 对象。将该参数解释为表示一个有符号的十进制整数, 就好像将该参数赋予 parseInt(java.lang.String) 方法一样。结果是一个表示字符串指定的整数值的 Integer 对象。
换句话说,该方法返回一个等于以下值的 Integer 对象:
new Integer(Integer.parseInt(s))
参数:
s - 要解析的字符串。
返回:
保存字符串参数表示的值的 Integer 对象。
抛出:
NumberFormatException - 如果字符串不能解析为一个整数。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Integer.ParseInt()返回的是值int
Integer.valueOf()返回的是类Integer
可以参考下JDK手册,int值和Integer类可以直接运算,java会使用integer的值进行计算,所以不会出错,但从本质上来说两者是不同的
Integer.valueOf()返回的是类Integer
可以参考下JDK手册,int值和Integer类可以直接运算,java会使用integer的值进行计算,所以不会出错,但从本质上来说两者是不同的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询