【戻る】 【進む】   目次        41. ブロックを伴うメソッド - ブロック評価

ブロックの評価

  • メソッド定義でブロック評価は yield で行う
  • ブロックで最後に評価した値がyield には戻り値
  • yield への引数がブロックパラメータに渡す
  • ブロックパラメータはブロック冒頭で | で挟んで指定
  •  
    def threetimes
      x = 5
      puts x*x - 2*x + 3
      x = 7
      puts x*x - 2*x + 3
      x = 11
      puts x*x - 2*x + 3
    end
    
    threetimes
    
    block0a.rb
    def threetimes
      puts yield 5
      puts yield 7
      puts yield 11
    end
    
    threetimes do |x|
      x*x - 2*x + 3
    end
    
    block0b.rb


    【戻る】 【進む】   目次        41. ブロックを伴うメソッド - ブロック評価