2013-02-15 5 views
10

私が誤って他の夜Rubyでこれと同等のものをやってしまった :Rubyでは[....]とは何ですか?

[...]何ですか
a = *1..5 # => [1, 2, 3, 4, 5] 
a << a 
a   # => [1, 2, 3, 4, 5, [...]] 
a.last  # => [1, 2, 3, 4, 5, [...]] 

と私はそれで何ができるのでしょうか?

+2

これは単なるプレゼンテーションマークアップであり、有効な構文ではないと思います。再帰的な配列に関して - 私はそれらを使ったことはありません。 –

+1

hah、前にこれを見たことがありません:) –

+4

"それほど多くの出力があります"というのは人間です。しかし、あなたが何を参照しているのですか? –

答えて

4

これは、Array.inspectが再帰配列を表示する方法と同じです。 aの最後の要素はそれ自身です。 5の後に表示された場所が無限ループになったら、検査は無限ループになります。

[1, 2, 3, 4, 5, [1, 2, 3, 4, 5, [1, 2, 3, 4, 5, [1, 2, 3, 4, 5, [...]]]]] 
+1

または 'a.flatten'を試してください –

+0

;-)または' a.join( '、') ' –

関連する問題