从数组中删除所有偶数(Ruby)?

时间:2012-12-21 09:18:48

标签: ruby

我正在做Ruby Monk教程以进一步学习一些ruby,我对这应该是一个更简单的问题感到难过。我知道答案就在我面前,但我似乎无法弄清楚:

从下面给出的数组中删除所有偶数: [1,2,3,4,5,6,7,8,9]

任何帮助都会很棒!

5 个答案:

答案 0 :(得分:7)

在这里。

a = [1, 2, 3, 4, 5, 6]
a.delete_if &:even?

答案 1 :(得分:2)

这是一种更简单的方式

[1, 2, 3, 4, 5, 6].delete_if {|n| n%2 == 0 } 

答案 2 :(得分:1)

尽量放松所有人。我叫Ron&我也参加了RubyMonk课程。问题是我们过度分析了一个简单的问题。我们被要求删除所有 来自阵列的偶数[1,2,3,4,5,6,7,8,9]。看完你的好答案后,我回去了。像这样重新工作: [1,2,3,4,5,6,7,8,9] - [2,4,6,8],&我用绿灯通过它继续前进。非常感谢您的时间..

答案 3 :(得分:0)

我认为Gull的建议会为您提供最佳服务。但是如果你想要另一个只包含奇数的数组,还有另一种选择:

a = [1, 2, 3, 4, 5, 6]
b = a.select {|x| x.odd? } 

同样在他的回答中,您可以使用even?代替x % 2 == 0

答案 4 :(得分:0)

[1,2,3,4,5,6,7,8,9].delete_if {|n| n %2 == 0 } 
根据您之前的课程,

应该是您的答案。