DAY04 基本概念 / eachメソッド

TOKHEE·2024년 3월 22일
0

基本概念

  1. block
    1. コードの束

    2. メソッドへの転送

    3. 構文

      • do...end: 複数の行にわたるブロックを定義するときに主に使用
      • {...}: 一行で簡潔にblockを定義する時に主に使用
        • 演算子の優先順位が do...endより高い
      [1, 2, 3].each { |n| puts n * 10 }
    4. block 変数

      1. | |
      2. block 外部からはアクセス不可
      3. 伝達される因子を受けて使用
      # 一行のblock
      [1, 2, 3].each { |number| puts number }
      
      # 数行のblock
      [1, 2, 3].each do |number|
        puts number
        puts number * 2
      end
    5. blockの戻り値

      1. 最後の表現式の評価結果
      2. メソッドでblock を使用する場合、戻り値はメソッドによって異なるように使用

「eachメソッド」

  1. eachメソッドとは?
    1. Enumerableモジュールの最も基本的
    2. Array、Hash、Rangeなど様々なcollection typeに対して使用
      1. Array

        [1, 2, 3, 4, 5].each do |number|
          puts number
        end
      2. Hash

        {a: 1, b: 2, c: 3}.each do |key, value|
          puts "#{key} => #{value}"
        end
      3. Range

        (1..5).each do |number|
          puts number
        end
    3. collectionの各要素に対して与えられたblockを一度ずつ実行
    4. eachの戻り値
      1. 繰り返しを終えた後、原本collectionを返却

        ⇒ これはeachを使用した後も原本collectionに対する参照を維持しようとする時に有用

        numbers = [1, 2, 3, 4, 5]
        result = numbers.each do |number|
          puts number
        end
        puts result == numbers  # => true

0개의 댓글

관련 채용 정보