我刚刚在我的 rails 应用程序中解决了一个令人不安的错误,我发现问题在于 !0 是错误的。我假设那应该是真的。
我的印象是!运算符将反转整数中的位,因此 0 将变为全 1,因此为真。
事实并非如此,为什么?
另请注意 rails 控制台:
1.9.3p286 :002 > !0
=> false
1.9.3p286 :003 > 0
=> 0
1.9.3p286 :004 > !1
=> false
1.9.3p286 :005 > !!0
=> true
1.9.3p286 :006 > !0
=> false
1.9.3p286 :007 > !23
=> false