2014-02-19 75 views
0

我有固定的列表:找到一個數組常量列表

FRUITS = [MANGO, BANANA, ORANGE, GUAVA] 

和數組是這種不斷的超集,像

EDIBLE_ITEMS = [APPLE, CORN, MANGO, RICE, ORANGE, PAPAYA, LITCHI, RICE] 

所以現在我需要的,如果任何的測試來自FRUITS的元素與EDIBLE_ITEMS匹配,然後調用一個函數。

任何幫助將不勝感激。由於

回答

3

使用Array#&

FRUITS = ['MANGO', 'BANANA', 'ORANGE', 'GUAVA'] 
EDIBLE_ITEMS = ['APPLE', 'CORN', 'MANGO', 'RICE', 'ORANGE', 'PAPAYA', 'LITCHI', 'RICE'] 
(FRUITS & EDIBLE_ITEMS).any? 
# => true 
+1

感謝,因爲我們知道我們能在千元方式紅寶石做了這樣的問題你已經增加了一個 – cyborg

0

待辦事項如下使用Enumerable#any?

EDIBLE_ITEMS = %w[APPLE, CORN, MANGO, RICE, ORANGE, PAPAYA, LITCHI, RICE] 
FRUITS = %w[MANGO, BANANA, ORANGE, GUAVA] 
FRUITS.any? { |item| EDIBLE_ITEMS.include? item } # => true 
+0

謝謝奧雅納...它的工作原理 – cyborg