为了账号安全,请及时绑定邮箱和手机立即绑定

java中的parseInt和valueOf之间的区别?

java中的parseInt和valueOf之间的区别?

墨色风雨 2019-08-29 16:42:01
java中的parseInt和valueOf之间的区别?这两种方法有什么区别?他们似乎做同样的事情对我来说(也无二parseFloat(),parseDouble(),parseLong()等等,他们如何不同Long.valueOf(string)?编辑:此外,哪些是更好的,并按惯例更常使用?
查看完整描述

3 回答

?
潇湘沐

TA贡献1816条经验 获得超6个赞

那么,API Integer.valueOf(String)确实可以说它String被解释为完全被解释为Integer.parseInt(String)。但是,valueOf(String)返回一个对象,而返回一个原语。new Integer()parseInt(String)int

如果你想享受潜在的缓存优势Integer.valueOf(int),你也可以使用这个眼睛:

Integer k = Integer.valueOf(Integer.parseInt("123"))

现在,如果你想要的是对象,而不是原始的,然后使用valueOf(String)可能比制作一个新的对象出更有吸引力parseInt(String),因为前者是始终存在跨IntegerLongDouble,等。


查看完整回答
反对 回复 2019-08-29
?
忽然笑

TA贡献1806条经验 获得超5个赞

来自这个论坛

parseInt()返回原始整数类型(int),valueOf返回 java.lang.Integer,它是代表整数的对象。在某些情况下,您可能需要Integer对象而不是基本类型。

当然,另一个明显的区别是intValue是一个实例方法,其中parseInt是一个静态方法。


查看完整回答
反对 回复 2019-08-29
?
眼眸繁星

TA贡献1873条经验 获得超9个赞

Integer.valueOf(s)

类似于

new Integer(Integer.parseInt(s))

区别是valueOf()返回an Integer,并parseInt()返回一个int(基本类型)。另请注意,valueOf()可以返回缓存的Integer实例,这会导致混淆的结果,其中==测试结果似乎是间歇性正确的。在自动装箱之前,方便性可能会有所不同,在java 1.5之后它并不重要。

而且,Integer.parseInt(s)也可以采用原始数据类型。


查看完整回答
反对 回复 2019-08-29
  • 3 回答
  • 0 关注
  • 844 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信