Ruby 1.9的lambda新语法

来源:互联网 发布:windows qt 串口编程 编辑:程序博客网 时间:2024/05/29 16:21
l1 = lambda{print "l1"}l1 = lambda{print "l1"}l1.call # l1l2 = lambda{|n| print "l#{n}"}l2.call(2) # l2l3 = ->{print "l3"} # l3.call # l3l4 = ->(n){print "l#{n}"}l4.call(4) # l4l5 = ->(){print "l5"}l5.call # l5def m(&b)  yieldenddef mn(&b)  yield 123endm(&l1) # l1m(&l3) # l3m(&l5) # l5mn(&l2) # l123mn(&l4) # l123

Ruby 1.9引入的lambda新语法如下:

->(param){expression}

没有参数时,括号可以省略,也可以用空的括号,就像上面的例子中“l5”展示的那样。




0 0
原创粉丝点击