2013-02-15 31 views
10

skończyło się przypadkowo robi równowartość tego w Ruby tamtej nocy:Co to jest [....] w Rubim?

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

Co jest [...] i co mogę z tym zrobić?

+2

Domyślam się, że to tylko znacznik prezentacji, a nie poprawna składnia. Dotyczące tablic rekurencyjnych - nigdy ich nie używałem. –

+1

hah, nie widziałem tego wcześniej :) –

+4

To człowiek dla "omg so much output". Nie masz pewności, na czym polega pytanie, do jakiego "odniesienia" się odwołujesz? –

Odpowiedz

4

To po prostu sposób, w jaki Array.inspect wyświetla tablice rekurencyjne. Ostatni element a jest sam w sobie. Jeśli gdzie wyświetlane po 5, inspekcja zakończyłaby się nieskończoną pętlą:

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

lub spróbuj 'a.flatten' –

+0

;-) lub' a.join (',') ' –