最佳实践:使用什么,包装类或原始数据类型?

Ama*_*mar 14 java

在Java中,我们有原始数据类型和一堆包装类.我的问题是什么时候用什么?我知道当我们需要创建集合时,我们需要使用包装类,但除此之外是否有其他特定情况应该使用包装类?

另外,除非绝对必要,否则应始终使用原始数据类型?

例如,如果我创建一个具有整数和布尔属性的类:

Class MyClass {
    ...
    private Integer x;
    private Boolean y;
    ...
}
Run Code Online (Sandbox Code Playgroud)

要么

Class MyClass {
    ...
    private int x;
    private boolean y;
    ...
}
Run Code Online (Sandbox Code Playgroud)

应该更频繁地使用哪一个?在什么情况下应该使用另一个?

JB *_*zet 22

除非您没有其他选择,否则请使用基元类型.它不可为空的事实将防止许多错误.而且他们也更快.

除了集合之外,包装器类型通常用于表示可为空的值(例如,来自数据库可为空的列).

  • 是.在其他情况下,使用包装器类型可能是个好主意,但作为一般规则,这就是想法. (3认同)
  • 因此,将默认值设置为 0 而不是 null 将防止许多错误??? (2认同)

Saw*_*wan 5

本文讨论了包装类,他们说:

Java API中的包装类有两个主要用途:

1-提供一种机制来"包装"对象中的原始值,以便原语可以包含在为对象保留的活动中,例如添加到集合中,或者从具有对象返回值的方法返回.

2-为基元提供各种实用程序功能.这些函数中的大多数与各种转换有关:将原语转换为String对象,从而将原语和String对象转换为不同的基数(或基数),例如二进制,八进制和十六进制.