gpt4 book ai didi

ruby - 这是 ruby 中的任何条件类型吗? !!() , !() , !0, !!0

转载 作者:太空宇宙 更新时间:2023-11-03 17:03:27 25 4
gpt4 key购买 nike

我只是在玩 irb。我尝试了返回 true/false

的语法

任何人都可以向我描述这种行为发生的原因和方式吗?这是任何条件类型吗?

例如:

 > !!()
=> false
> !()
=> true
> !0
=> false
> !!0
=> true

如果有人能向我描述这种语法,我将不胜感激。

最佳答案

()
# => nil

圆括号优先于“运算符”,没有表达式的圆括号返回 nil,如您所见。所以难怪:

!()
# => true
!!() # == !(!()) == !(true)
# => false

0 在 Ruby 中是 truthy(事实上,只有 nilfalsefalsy):

puts 'truthy' if 0
truthy
# => nil

所以 0 的反义词是 false:

!0
# => false

!!0false相反:

!!0 # == !(!0) == !(false)
# => true

关于ruby - 这是 ruby 中的任何条件类型吗? !!() , !() , !0, !!0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30163197/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com