下面的代码可以很好地将每个其他项目放在常规数组中。
letters = [["a", "b"], ["c", "d"], ["e", "f"], ["g", "h"], ["i", "j"]]
letters.each.with_index do |i, index|
if (index %2 ==0) then
puts "#{[index, i]}"
end
end
但是在多维方面,我无法想象如何从0
- >获取每个数组的第二项。 b
,1
- > d
等任何想法?
答案 0 :(得分:1)
letters.each do |letter|
puts letter[1] # Will give you second item of sub array
end
如果你想在子数组的偶数索引处获取项目,你还必须遍历子数组
letters.each do |letter|
letter.each.with_index do |l, i|
if (i %2 ==0) then
puts "#{[l, i]}"
end
end
end
答案 1 :(得分:0)
让我们不要忘记简单:第一个和:数组的最后一个属性。
irb(main):001:0> letters = [["a", "b"], ["c", "d"], ["e", "f"], ["g", "h"], ["i", "j"]]
=> [["a", "b"], ["c", "d"], ["e", "f"], ["g", "h"], ["i", "j"]]
irb(main):002:0> puts letters.map(&:last).to_s
["b", "d", "f", "h", "j"]
答案 2 :(得分:0)
letters.each_index.zip(letters.transpose.last)
#=> [[0, "b"], [1, "d"], [2, "f"], [3, "h"], [4, "j"]]
答案 3 :(得分:-1)
您可以执行以下操作:
Imports A, D from File2
Adds B
在迭代letters = [["a", "b"], ["c", "d"], ["e", "f"], ["g", "h"], ["i", "j"]]
letters.each.with_index do |element, index|
if (index %2 ==0) then
puts "#{[index, element[1]]}"
end
end
=> [0, "b"]
[2, "f"]
[4, "j"]
时,letters
是一个数组。您可以按原样访问其字段。
编辑:
如果你真的想要所有的元素只是删除条件:
element