我注意到了这一点:我的类有boolean成员,在某些运行点我看到它在调试器中的价值null.但是当我使用getter方法时,它会返回false.
我知道,大多数书都告诉你,boolean在Java中只有两个值,不像C/C++,其中每个非零数字都可以解释为true.所以我想知道,那里发生了什么?
当其他类型的某些值或null可被解释为时,还有其他任何情况false吗?也许在JLS的某个地方解释这个问题,有人可以指点我吗?
编辑:确实昨天是调试的糟糕日子.首先,我浪费了4个小时来找到一个错误的来源,当我逆转来源并再次做出相同的改变时,这个错误消失了.然后这个.我只是试图重现而不能.它是美化还是只是星期一是艰难的一天?我不知道.感谢大家的回应!我想你可以投票立即关闭或删除这个问题.
Mat*_*all 11
听起来这个字段被声明为可空的包装类型Boolean而不是boolean基元.
| 归档时间: |
|
| 查看次数: |
8232 次 |
| 最近记录: |