2016-06-16 163 views
-3

已移至代碼評論。已移至代碼評論評論

+0

你的代碼不解析; Ruby需要'end'來終止塊,比如函數定義。看看使用Array#select。 –

+0

請閱讀「[問]」。確保你的示例代碼符合要求,它做你想做的,語法上是正確的,然後看看[codereview.se],看看它是否更適合你的問題。因爲它不符合要求,在語法上也不正確,它不會做你想要的。 –

+0

謝謝@ChrisHeald – throwaway0524

回答

0

而不是做明確的迭代中,最好的方法是可能Array#select從而:

even_numbers = numbers.select { |n| n.even? } 

其中將運行陣列numbers中的每個元件上給定的塊,併產生包含該塊返回的所有元素的數組真正。

+0

謝謝您的建議 – throwaway0524

0

或引起問題的慣例下面的替代解決方案:

def get_even_numbers(array) 
     even_num = [] 
     array.each do |n| 
      even_num << n if n.even?  
     end 
    even_num 
end 

過程去爲選擇方法的並且總是優選的。

+0

感謝您的幫助。我看到我的代碼需要改進。 – throwaway0524