回答編集履歴

1

リファレンスマニュアルの引用を追加

2016/10/11 05:53

投稿

hana-da
hana-da

スコア1728

test CHANGED
@@ -19,3 +19,41 @@
19
19
  ```
20
20
 
21
21
  こういう事でしょうか?
22
+
23
+
24
+
25
+ ---
26
+
27
+ [https://docs.ruby-lang.org/ja/2.3.0/doc/spec=2fcall.html](https://docs.ruby-lang.org/ja/2.3.0/doc/spec=2fcall.html)
28
+
29
+
30
+
31
+ 引数の直前に * がついている場合、その引数の値が展開されて 渡されます。展開はメソッド to_a を経由して行なわれます。つまり:
32
+
33
+
34
+
35
+ > foo(1,*[2,3,4])
36
+
37
+ > foo(1,*[])
38
+
39
+ > foo(1,*[2,3,4],5)
40
+
41
+ > foo(1,*[2,3,4],5,*[6])
42
+
43
+
44
+
45
+ は、それぞれ
46
+
47
+
48
+
49
+ > foo(1,2,3,4)
50
+
51
+ > foo(1)
52
+
53
+ > foo(1,2,3,4,5)
54
+
55
+ > foo(1,2,3,4,5,6)
56
+
57
+
58
+
59
+ と同じです。