在 Java 中,通过对象方式声明的 int 常量有什么好处:
public final static Integer SOME_CONSTANT = Integer.valueOf(99);
Run Code Online (Sandbox Code Playgroud)
而不是经典
public final static int SOME_CONSTANT = 99;
Run Code Online (Sandbox Code Playgroud)
我知道对象和原语之间的基本区别,还有自动装箱。但是我在我们公司的代码中看到了这个声明,我想知道将整数常量声明为对象有什么特别的原因吗?
这取决于您计划如何使用该常量。如果您有一个需要 的 API Integer,那么int由于自动装箱,使用该表单会产生较小的性能损失。
如果您只需要原语,拆箱Integer并不是很昂贵,但很容易避免。
另请注意
Integer SOME_CONSTANT = Integer.valueOf(99);
Run Code Online (Sandbox Code Playgroud)
完全一样
Integer SOME_CONSTANT = 99;
Run Code Online (Sandbox Code Playgroud)
这些*.valueOf()方法被添加到 API 中,为编译器提供了一种自动装箱原语的通用方法。
| 归档时间: |
|
| 查看次数: |
9022 次 |
| 最近记录: |