Rubyで可変長引数を使う / 引数を配列で渡す

よく忘れるのでメモ。

# 可変長引数
def hoge*arg
  p arg
end
 
hoge1, 2, 3 #=> [1, 2, 3]
hoge1, 2, 3, 4 #=> [1, 2, 3, 4]
 
# 引数を配列で渡す
def fugaa, b, c
  p a, b, c
end
 
fuga1, 2, 3 #=> [1, 2, 3]
fuga1, 2, 3, 4 #=> エラー
 
# 可変長引数と組み合わせる
def piyo*d
  p d
end
 
piyo1, 2, 3 #=> [1, 2, 3]
piyo1, 2, 3, 4 #=> [1, 2, 3, 4]