将多维数组连接成对 Ruby
joining multidimensional array Into pairs Ruby
对于我制作的这个程序,我需要将一些数组连接到一个多维数组中:
数组是什么:
[["2", "2"]["0", "9"]["2", "2"]["2", "7"]["1", "7"]["0", "8"]["0", "1"]
["0", "9"]]
我希望它变成这样:
["22", "09", "22", "27", "17", "08", "01", "09"]
抱歉,如果这是一个非常愚蠢的问题,但如果有人能帮助我,我会很高兴,如果不可能做到这一点,请告诉我。
谢谢
试试这个:
multi_dimensional_array = [["2", "2"], ["0", "9"], ["2", "2"], ["2", "7"], ["1", "7"], ["0", "8"], ["0", "1"], ["0", "9"]]
multi_dimensional_array.map(&:join)
map
遍历数组中的条目和 returns 修改条目的数组副本。
&:join
通过使用 Symbol#to_proc
将符号转换为块,将 join
发送到迭代的每个成员:您可以阅读它,就好像它扩展为:
->(entry){ entry.send(:join) }
一般的模式是:
list = [["2", "2"],["0", "9"],["2", "2"],["2", "7"],["1", "7"],["0", "8"],["0", "1"],["0", "9"]]
# For each item in the list, transform it...
list.collect do |entry|
# ...by joining the bits together into a single string.
entry.join
end
对于我制作的这个程序,我需要将一些数组连接到一个多维数组中:
数组是什么:
[["2", "2"]["0", "9"]["2", "2"]["2", "7"]["1", "7"]["0", "8"]["0", "1"]
["0", "9"]]
我希望它变成这样:
["22", "09", "22", "27", "17", "08", "01", "09"]
抱歉,如果这是一个非常愚蠢的问题,但如果有人能帮助我,我会很高兴,如果不可能做到这一点,请告诉我。 谢谢
试试这个:
multi_dimensional_array = [["2", "2"], ["0", "9"], ["2", "2"], ["2", "7"], ["1", "7"], ["0", "8"], ["0", "1"], ["0", "9"]]
multi_dimensional_array.map(&:join)
map
遍历数组中的条目和 returns 修改条目的数组副本。
&:join
通过使用 Symbol#to_proc
将符号转换为块,将 join
发送到迭代的每个成员:您可以阅读它,就好像它扩展为:
->(entry){ entry.send(:join) }
一般的模式是:
list = [["2", "2"],["0", "9"],["2", "2"],["2", "7"],["1", "7"],["0", "8"],["0", "1"],["0", "9"]]
# For each item in the list, transform it...
list.collect do |entry|
# ...by joining the bits together into a single string.
entry.join
end