我想创建一个过滤器,并能够将其应用于数组或散列.例如:
def isodd(i)
i % 2 == 1
end
我希望能够像这样使用它:
x = [1,2,3,4]
puts x.select(isodd)
x.delete_if(isodd)
puts x
这似乎应该是直截了当的,但我不知道我需要做什么才能让它工作.
我想创建一个过滤器,并能够将其应用于数组或散列.例如:
def isodd(i)
i % 2 == 1
end
我希望能够像这样使用它:
x = [1,2,3,4]
puts x.select(isodd)
x.delete_if(isodd)
puts x
这似乎应该是直截了当的,但我不知道我需要做什么才能让它工作.
创建lambda,然后使用&
运算符转换为块:
isodd = lambda { |i| i % 2 == 1 }
[1,2,3,4].select(&isodd)