2016-06-16 254 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