我有一个数组:
ak = [10, 20, 3, 4, 5, -5, 28, 27]
我想要这样的解决方案:
#even:4
#odd:3
#positive:7
#negative:1
我怎么用散列来做?
最佳答案
假设(基于您期望的输出)您只需要正数或奇数:
h = Hash.new
h["even"] = ak.select {|x| x.even? && x > 0}.count
h["odd"] = ak.select {|x| x.odd? && x > 0}.count
h["positive"] = ak.select {|x| x > 0}.count
h["negative"] = ak.select {|x| x < 0}.count
puts h
关于ruby - 使用散列分辨正数,奇数,偶数和负数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29736146/