Rubyがミニツク

あなたのRubyの技術に関するより詳しい知識と理解を増やします。

Ruby入門コース

このコースについて

Rubyのeラーニング研修システムはRailsを使ってWebアプリケーション開発ができる技術者の育成を目指します。 そのため、Railsを扱うことができるだけのRubyの知識を得ることがRuby入門コースの目標となっています。

コンテンツ一覧

ヒント レッスンの名前をクリックすると、その内容を表示します。

次のコンテンツ ホームへ戻る

名前付き引数としてのハッシュ

メソッドを呼び出す時は正しい順番で引数を指定しないといけません。メソッドの引数が多くなってくると、引数の正しい順番を覚えておいてメソッドを呼び出すのは難しくなります。そのような時に他の言語では仮引数という機能を使うことで、メソッドの引数の順番を覚えておかなくてもよくなります。
Rubyでは仮引数名を指定してメソッド呼出しをする機能をサポートしていません。
ただし、メソッドの引数にハッシュオブジェクトを指定することによって、似たような機能をメソッドに持たせることができます。キーを名前のように使うことによって、キーに指定した引数へ値を渡すことができます。

def cubage(args)
  # デフォルト値の設定
  x = args[:x] || 10
  y = args[:y] || 10
  h = args[:h] || 10
  return x * y * h
end
p cubage(:h => 100)  #=> 10000

ハッシュオブジェクトをメソッドの最後の引数に指定するならば、ハッシュオブジェクトを囲む{}はなくても構いません。そのため、{}で囲まなくてもキーと値だけでハッシュオブジェクトをメソッドの引数に指定することができます。


次のコンテンツ ホームへ戻る