![]() |
1
6
有两种方法可以做到这一点。 如果您坚持使用Boolean,请使用大写B版本而不是小写B。大写B Boolean是一个对象,可以设置为空,并执行您所描述的操作。小写B布尔值是一个基元,不能设置为空。 但是,有一种更好的方法,当它设计为2时,不依赖于对3个值使用布尔值。 使用枚举,您可以根据需要定义类型,并拥有所需的数量。下面是一个例子,以及如何使用它。
|
![]() |
2
1
这是三元逻辑,不是二进制逻辑。它通常用于关系数据库。 当然,布尔值是二进制的——只是对或错。 如果你想要三元逻辑,用你自己的类型包装它。 |
![]() |
3
1
(我将介绍三个常用选项,然后建议第三个选项)。 第一种选择是 使用布尔值并将其设置为真、假或空 . 这有一些好处:
然而,有些人,不管合理与否,期望一个布尔值要么是真的要么是假的,并且不考虑空的可能性,这可以 容易导致错误 . 第二种选择是 使用枚举 :
第三种——也是推荐的——选择是 使用可选的布尔值 从 Google's excellent Guava library :
|
![]() |
4
-1
使用布尔值-基本布尔值上的包装对象。这样,您可以将引用设置为空、真或假。 |
![]() |
tender · 基于布尔限定符的Python熊猫if语句 7 年前 |
![]() |
user3663055 · 尽管有适当的布尔值,但代码不会打印 7 年前 |
![]() |
merko · 检查布尔值-Javascript 7 年前 |
![]() |
user6631314 · IOS/核心数据/目标-C:使用布尔值预测 7 年前 |
![]() |
user1032531 · 符号极性的自然键 7 年前 |
![]() |
Bartholomas · Python语句中的布尔逻辑 7 年前 |
![]() |
Dustin Michels · 理解字符串的真实性 7 年前 |
![]() |
user44840 · 熊猫数据帧阈值--如果超过,则保持数字固定 7 年前 |