目指そうかなRubyist RSSフィード

 | 

2011-06-20

[meta] blockの基本  [meta] blockの基本 - 目指そうかなRubyist を含むブックマーク はてなブックマーク -  [meta] blockの基本 - 目指そうかなRubyist  [meta] blockの基本 - 目指そうかなRubyist のブックマークコメント

復習

blockは中括弧か、do endで定義

ブロックを定義できるのは、メソッドを呼び出す時だけ。

ブロックはメソッドにそのままわ達され、メソッド側でyieldを使ってブロックをコールバックする。

def a_method(a, b)
  a + yield(a, b)
end

a_method(1, 2) {|x, y| (x + y) * 3} # => 10

block_given?

メソッドの内部からblockが渡されているか確認する方法。

def a_method
  return yield if block_given?
  'no block'
end

a_method { 'block' } # =>'block'
a_method # =>'no block'

SolangeSolange 2013/09/20 03:14 No conpialmts on this end, simply a good piece.

NapfeNapfe 2013/09/20 13:27 Wow! Great to find a post with such a clear <a href="http://anqqvwl.com">mesaegs!</a>

AliAli 2013/09/22 07:41 I've been looikng for a post like this for an age http://weiadvvqaz.com [url=http://urmnawcl.com]urmnawcl[/url] [link=http://ypkbppnau.com]ypkbppnau[/link]

JulioJulio 2013/09/23 11:53 Wow! That's a really neat <a href="http://kjcmyy.com">anwers!</a>

ゲスト



トラックバック - http://rubyist.g.hatena.ne.jp/samurai20000/20110620
 |