我有一个看起来像的二维数组:
array = [["apples", 10], ["oranges", 12], ["peaches", 15], ["lemons", 7]]
我想在另一个2d数组的帮助下替换array
中的一些字符串(保持array
中的第二个位置不变),该数组包含我想用作替换的字符串和在第二个位置是我要放置替换的索引,它看起来像
replacements = [["blankets", 1], ["shoes", 3]]
所以我想把blankets
放在array
等索引1的数组的第一个位置,输出看起来像
output = [["apples", 10], ["blankets", 12], ["peaches", 15], ["shoes", 7]]
任何人都可以帮我吗?
答案 0 :(得分:2)
以下应该这样做:
replacements.each{|r| array[r[1]][0] = r[0] }
答案 1 :(得分:1)
replacements.each{|e, i| array[i][0] = e}
答案 2 :(得分:0)
单个循环可以完成任务:
replacements.each { |r| array[r[1]][0] = r[0] if array[r[1]] }