因此,根据维基百科和其他人的说法,一个boolean
值应该只有两种状态:0
或1
;true
或false
;yes
或no
;等等...
好的,如果我错了,请纠正我,但是,JavaBoolean
包装器让开发人员有 3 种状态true
:false
和null
.
那不是错了吗?
我知道它可以用“布尔是一个对象”等来解释,但是,如果 javac 自动“包装”null
到false
恕我直言,那就太好了。
我的观点是:这种行为让开发人员做了很多废话,因为他们使用Boolean
而不是正确的对象类型。
不管怎样,你怎么看?我是在遵循错误的思路……还是真的“错误”?
编辑
我知道什么是,和等null
之间的区别等等(我有 3 年以上的 java 经验)。boolean
Boolean
我的观点是关于概念本身,例如在 Ruby 中,如果我做类似的事情if something
,如果这个something
实例是nil
,它将是false
.
我并不是说 Java 是垃圾或类似的东西,我每天都在使用它。