我一直在努力學習如何處理由數組組成的數組。Array of Array,根據索引處數組的內容刪除一個索引?
說我有這個數組:
my_array = [['ORANGE',1],['APPLE',2],['PEACH',3]
我怎麼會去尋找一個包含「蘋果」和刪除索引(刪除子數組my_array指數[「蘋果」,2],因爲'蘋果「在該指數陣列condined)?
謝謝 - 我真的很感謝這裏的幫助。
我一直在努力學習如何處理由數組組成的數組。Array of Array,根據索引處數組的內容刪除一個索引?
說我有這個數組:
my_array = [['ORANGE',1],['APPLE',2],['PEACH',3]
我怎麼會去尋找一個包含「蘋果」和刪除索引(刪除子數組my_array指數[「蘋果」,2],因爲'蘋果「在該指數陣列condined)?
謝謝 - 我真的很感謝這裏的幫助。
您可以使用Array.select
篩選出的項目:
>> a = [['ORANGE',1],['APPLE',2],['PEACH',3]]
=> [["ORANGE", 1], ["APPLE", 2], ["PEACH", 3]]
>> a.select{ |a, b| a != "APPLE" }
=> [["ORANGE", 1], ["PEACH", 3]]
select
將返回這些項目從,爲此給定塊(這裏a != "APPLE"
)返回true
。
my_array.reject { |x| x[0] == 'APPLE' }
我認爲MYYN解構產量(我認爲這就是所謂的)是很好的。 – DigitalRoss 2011-02-05 02:18:19
這是一個變種:`a.reject {| x,y | x =='APPLE'}` – miku 2011-02-05 02:20:20
我測試了這一點,它的工作原理:
my_array.delete_if { |x| x[0] == 'APPLE' }
這是真棒。我非常感謝,謝謝! – Reno 2011-02-05 05:08:12