Ruby中的条件块
发布时间:2020-12-17 01:49:47 所属栏目:百科 来源:网络整理
导读:假设我有一个带有块的函数with_foo,并将它包装在一段代码中,比如 with_foo do puts "hello!"end 现在我想使包装有条件,如 if do_with_foo? with_foo do puts "hello!" endelse puts "hello!" # without fooend 有没有办法写这个更短/更优雅,这意味着无需重复
假设我有一个带有块的函数with_foo,并将它包装在一段代码中,比如
with_foo do puts "hello!" end 现在我想使包装有条件,如 if do_with_foo? with_foo do puts "hello!" end else puts "hello!" # without foo end 有没有办法写这个更短/更优雅,这意味着无需重复代码放“你好!”? 解决方法
如果你愿意用块指定参数,那么它是可能的.
用上面的foo给出,你可以编写这样的片段: whatever = proc {puts "hello"} #build a proc object with a block if do_with_foo? with_foo &whatever #pass it to with_foo else whatever.call #normally call it end (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |