#3 楼 @ShiningRay @layerssss 楼主期待的是能可以得到以下结果的运算符?
001 > a = nil
=> nil
002 > a = a.nil? ? 2 : a
=> 2
003 > a = false
=> false
004 > a = a.nil? ? 2 : a
=> false
是这样用的
[1] pry(main)> h = { a: false }
=> {:a=>false}
[2] pry(main)> h = { a: true, b: 2}.merge h
=> {:a=>false, :b=>2}
#12 楼 @layerssss 有点较真,不过实际情况中不一定存在这种情况
[1] pry(main)> h = { a: false, b: nil }
=> {:a=>false, :b=>nil}
[2] pry(main)> h = { a: true, b: 2 }.merge h
=> {:a=>false, :b=>nil}