在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1. block中的 yield 与遍历 5.times do |i| puts i end 或者 def my_times(n) i = 0 while n > i i += 1 yield i end end my_times(5) { |num| puts "hello, #{num}xRuby" } # 得到結果 # hello, 1xRuby # hello, 2xRuby # hello, 3xRuby # hello, 4xRuby # hello, 5xRuby
2. block 物件化 由于 block不能单独存在。可以借助 Proc.new 比如 greeting = Proc.new { puts "哈囉,世界" } # 使用 Proc 類別可把 Block 物件化 或者 say_hello_to = Proc.new { |name| puts "你好,#{name}"} say_hello_to.call("尼特羅會長") 调用 say_hello_to.call("尼特羅會長") # 使用 call 方法 say_hello_to.("尼特羅會長") # 使用小括號(注意,有多一個小數點) say_hello_to["尼特羅會長"] # 使用中括號 say_hello_to === "尼特羅會長" # 使用三個等號 say_hello_to.yield "尼特羅會長" # 使用 yield 方法
结束 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论