我有这个数组:
array = [["R.M", 20], ["R.U-CS", 3], ["R.M-TIC", 3], ["R.J.CONF", 20]]
Run Code Online (Sandbox Code Playgroud)
我想要sum数值,所以我使用以下方法将其转换为单个数组flatten:
array = array.flatten
#=> ["R.M", 20, "R.U-CS", 3, "R.M-TIC", 3, "R.J.CONF", 20]
Run Code Online (Sandbox Code Playgroud)
然后:
a = []
array.each do |r|
a << r if r.class == Fixnum
end
a
Run Code Online (Sandbox Code Playgroud)
这是有效的,但我正在寻找一个更简单的解决方案,可能首先将数组转换为"唯一numeric"数组:
[20, 3, 3, 20]
Run Code Online (Sandbox Code Playgroud)