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

Java int到String-Integer.toString(i)与新的Integer(i)

Java int到String-Integer.toString(i)与新的Integer(i)

幕布斯6054654 2020-02-04 15:15:27
有时,java使我感到困惑。我要进行大量的int初始化。什么是真正的差异?Integer.toString(i)new Integer(i).toString()
查看完整描述

3 回答

?
白衣染霜花

TA贡献1796条经验 获得超10个赞

Integer.toString调用类中的静态方法Integer。它不需要的实例Integer。


如果调用new Integer(i),则创建type的实例Integer,该实例是封装int值的完整Java对象。然后,toString在其上调用方法以要求它返回自身的字符串表示形式。


如果您只想打印int,则可以使用第一个,因为它更轻,更快且不占用额外的内存(除了返回的字符串)。


如果您想要一个表示整数值的对象(例如,将其放入集合中),则可以使用第二个对象,因为它为您提供了一个成熟的对象,可以执行裸操作无法完成的所有事情int。


查看完整回答
反对 回复 2020-02-04
?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

new Integer(i).toString()首先在i其周围创建一个(冗余的)包装对象(它本身可能是一个包装对象Integer)。

Integer.toString(i) 首选,因为它不会创建任何不必要的对象。


查看完整回答
反对 回复 2020-02-04
?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

另一种选择是静态String.valueOf方法。


String.valueOf(i)

对我来说,这感觉稍微正确一点Integer.toString(i)。当i的类型更改时,例如从int到double,代码将保持正确。


查看完整回答
反对 回复 2020-02-04
  • 3 回答
  • 0 关注
  • 699 浏览

添加回答

举报

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