2017-03-29 4 views
-1

Nehmen wir an, ich ein Array haben, die wie folgt aussieht:Rubin: Karte Array von Strings in ein Array von Arrays

["aaa", "bbb", "ccc"] 

ich jedes dieser Elemente eines Arrays in ein Array ersetzen möchten den gleichen Wert hinzufügen, dies wie:

[["aaa", 0], ["bbb", 0], ["ccc", 0]] 

ich verstehe nicht, warum: liefert

arr_of_arr = arr.map{|single_item| single_item = [single_item, 0]} 

nicht funktioniert, sondern die Folge ing Fehler:

syntax error, unexpected keyword_end, expecting '}' 
+1

Es funktioniert für mich. Der Fehler, den Sie bekommen, ist woanders. Obwohl Sie den 'single_item =' Teil nicht benötigen. – ndn

+0

@ndn Sie hatten in beiden Fällen Recht, danke :) – MrVocabulary

Antwort

1

arr = [ "aaa", "bbb", "ccc"]

arr_of_arr = arr.map {| single_item | [single_item, 0]}

0

Wie ndn wies darauf hin, kann ich nur schreiben:

arr_of_arr = arr.map{|single_item| [single_item, 0]} 

Aber mein Problem woanders war.

Verwandte Themen