在Java中,运营商<,>,>=而<=不是为原始定义的boolean类型。但是,相应的包装类Boolean实现了Comparable. 也就是说:true > false 是一个错误,但Boolean.TRUE.compareTo(Boolean.FALSE) > 0很好。
<
>
>=
<=
boolean
Boolean
Comparable
true > false
Boolean.TRUE.compareTo(Boolean.FALSE) > 0
怎么来的?语言设计者改变主意了吗?那为什么要保持语无伦次的行为呢?
尽管随意,但我可以想到为布尔值定义总顺序的优点。有什么缺点吗?
java boolean-algebra
boolean-algebra ×1
java ×1