gpt4 book ai didi

java - 包装类,通过构造函数中的字符串参数创建对象时的功能差异?

转载 作者:行者123 更新时间:2023-12-01 08:05:29 24 4
gpt4 key购买 nike

就包装类的实例而言,当通过构造函数中的 String 参数创建实例时,与 int 相比,实例的行为是否有所不同,等。

例如,有什么区别:

Integer wrapperInt= new Integer(33);

Integer wrapperInt2= new Integer("33");

最佳答案

最终结果是相同的 - 您将得到一个值为 33Integer 对象。

如果无法解析输入字符串,则采用 String 的版本将抛出 NumberFormatException

注意:不需要编写像 IntegerwrapperInt = new Integer(33); 这样的语句。让编译器为您做这件事(自动装箱):

Integer wrapperInt = 33;

如果由于某种原因,您不想使用自动装箱,那么至少使用 Integer.valueOf(...) 而不是使用构造函数:

Integer wrapperInt = Integer.valueOf(33);

这样效率更高; valueOf 方法可以返回缓存的对象(因此无需创建新的 Integer 对象)。

关于java - 包装类,通过构造函数中的字符串参数创建对象时的功能差异?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22040508/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com