什么时候应该使用布尔值的空值?

Java的boolean允许值true,并false同时允许布尔值truefalsenull。我已经开始将booleans

转换为Booleans。这可能导致测试崩溃,例如

Boolean set = null;

...

if (set) ...

测试时

if (set != null && set) ...

似乎人为且容易出错。

何时将Booleans与空值一起使用是否有用?如果从不,那么包装对象的主要优点是什么?

更新:有很多有价值的答案,我在自己的答案中总结了其中一些。我充其量只是Java的中级课程,因此我尝试展示了一些我认为有用的东西。请注意,问题是“用词不正确”(布尔值不能“具有空值”),但如果其他人有相同的误解,我将其保留

回答:

使用boolean而不是Boolean每次都使用。这将避免很多NullPointerException,并使您的代码更健壮。

Boolean 很有用,例如

  • 将布尔值存储在集合中(列表,地图等)
  • 表示可为空的布尔值(例如,来自数据库中的可为空的布尔值列)。在这种情况下,null值可能表示“我们不知道它是对还是错”。
  • 每次方法需要使用Object作为参数时,都需要传递一个布尔值。例如,当使用反射或类似的方法时MessageFormat.format()

以上是 什么时候应该使用布尔值的空值? 的全部内容, 来源链接: utcz.com/qa/405260.html

回到顶部