初心者の質問は許しますが、配列があると言います:
a = [1,2,3]
そしてどこかの機能。インスタンス関数だとしましょう:
class Ilike
def turtles(*args)
puts args.inspect
end
end
Ilike.turtles
を呼び出すように、a
で(Ilike.new).turtles(1,2,3)
を呼び出すにはどうすればよいですか。
私はsend
に精通していますが、これは配列を引数リストに変換するようには見えません。
私が探しているものと似ているのは、Javascript apply
です。これはcall
と同等ですが、配列を引数リストに変換します。
ご存知のように、メソッドを定義するとき、*
引数のリストを配列に変換します。同様に、メソッドを呼び出すときは、*
配列を引数のリストに変換します。そのため、あなたの例では次のことができます:
Ilike.new.turtles(*a)