上の引数をそのまま使ったメソッド呼び出し例を次に示します。 foo 1, *array, 2, c: 3, "d" => 4, **hash 演算子の優先順位に注意すれば、v、v1、v2にはほぼどんな式でも代入できます。 ところで次をご覧ください。無効な組み合わせももちろんありますが、パラメータと引数の種類の組み合わせの多さはやばいです。 そしてsplatやダブルsplatがパラメータ側だけでなく引数側にもある点にご注意ください(ただし機能は異なります)。このあたりから不安になってきますね。ともあれ、各引数について解説します。 1. 通常の引数 ここで言う通常の引数には、以下を含めるものとします。いずれも引数の個数としては1個になります。 変数としての引数(vなど) 文字列リテラル("hello"など) 配列リテラル([1, 2, 3]など) パラメータ側を必須パラメータ1つに限った場合(
![Rubyのパラメータと引数の対応付けを理解する(後編)|TechRacho by BPS株式会社](https://cdn-ak-scissors.b.st-hatena.com/image/square/56d3cc04ff23aeb89e1bc1c22947c012e1bd9ada/height=288;version=1;width=512/https%3A%2F%2Ftechracho.bpsinc.jp%2Fwp-content%2Fuploads%2F2017%2F04%2F170406_2129_UyjoYi.png)