在工作的时候,我得到了警告
The constructor Integer(int) is deprecated
字符串
我在网上找不到替代的构造函数/解决方案。我该如何解决这个问题?
更新
对于其他基本 Package 器类型的构造函数,我也会得到类似的警告;例如。
The constructor Boolean(boolean) is deprecated
The constructor Byte(byte) is deprecated
The constructor Short(short) is deprecated
The constructor Character(char) is deprecated
The constructor Long(long) is deprecated
The constructor Float(float) is deprecated
The constructor Double(double) is deprecated
型
这些类的解决方案是否与Integer
相同?
1条答案
按热度按时间vktxenjb1#
您可以使用
字符串
从构造函数的javadoc:
已弃用。很少适合使用此构造函数。静态工厂valueOf(int)通常是更好的选择,因为它可能会产生更好的空间和时间性能。构造一个新分配的表示指定int值的对象。
主要区别在于,您不会总是获得一个带有
valueOf
的新示例,因为小的Integer
示例会被缓存。所有基本的 Package 器类型(
Boolean
,Byte
,Char
,Short
,Integer
,Long
,Float
和Double
)都采用了相同的模式。一般来说,替换:型
与
型
(Note上面提到的缓存行为因类型和Java平台而异,但尽管存在这些差异,Java 9+的弃用仍然适用。