Ruby 散列分配中的匿名方法
Ruby中是否有类似的功能: hash={:foo=>'bar',:bar=>lambda{condition?返回'value1':返回'value2'}Ruby 散列分配中的匿名方法,ruby,anonymous-function,Ruby,Anonymous Function,Ruby中是否有类似的功能: hash={:foo=>'bar',:bar=>lambda{condition?返回'value1':返回'value2'} 实际的代码不起作用(很明显),我知道我可以在散列赋值之前执行逻辑,但在赋值内部这样做会更好。这样的事情可能吗?你不需要lambda,只要这样就行了: hash = { :foo => 'bar', :bar => condition ? 'value1' : 'value2' } 或者,如果要在哈希上使用函数结
实际的代码不起作用(很明显),我知道我可以在散列赋值之前执行逻辑,但在赋值内部这样做会更好。这样的事情可能吗?你不需要lambda,只要这样就行了:
hash = {
:foo => 'bar',
:bar => condition ? 'value1' : 'value2'
}
或者,如果要在哈希上使用函数结果
hash= {
:foo=> 'foooooo',
:bar=> lambda {
if condition
value1
else
value2
end
}.call
}