このコードがあるとしましょう:
def something(*someargs)
return *someargs.join(",")
end
ここで、メソッド定義内の他の変数と同じように *someargs を参照できることがわかりました。しかし、私はこれを試しました...コンマで区切られた文字列として *someargs を返します。それでも、このメソッドを呼び出すと:
a = something(4, 5)
p a.class # => Array
p a #> ["4,5"]
something(4,5) がまだ配列を返すのはなぜですか? 私がこのようなことをすると:
[4, 5].join(",")
結果は配列にない文字列になります。したがって、私の質問は、「何か」メソッドがすべての引数を文字列として含む実際の文字列を返すようにするにはどうすればよいかということです。*someargs.class を実行すると、結果は「配列」になりますが、通常の配列のように動作しないため、奇妙です...