什么是Ruby语言中的_ | _?
发布时间:2020-12-17 02:55:32 所属栏目:百科 来源:网络整理
导读:我看过smarterer.com测试的这个东西.我用irb测试过这样的: 2.2.0 :019 puts _|_13= nil 2.2.0 :020 c = a.to_s.to_i;c+=1;i=13;puts _|_false= nil 这么奇怪的行为.那么这件事是什么,应该怎么做? 解决方法 这是三个令牌. _,和|,和_,它只适用于IRB或定义了_
我看过smarterer.com测试的这个东西.我用irb测试过这样的:
2.2.0 :019 > puts _|_ 13 => nil 2.2.0 :020 > c = a.to_s.to_i;c+=1;i=13;puts _|_ false => nil 这么奇怪的行为.那么这件事是什么,应该怎么做? 解决方法
这是三个令牌. _,和|,和_,它只适用于IRB或定义了_的其他环境.
这个: puts _|_ ……与此相同…… puts _ | _ …这是变量_与其自身的简单按位OR. 我能想到这样做的唯一原因是,在你需要一个真正的布尔值而不仅仅是一个假值的情况下,它会将nil变为false: irb(main):001:0> nil | nil => false 否则,一个| a始终是一个支持|的类型,带有一些内置类型的notable exception. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |