数组是
array = [[1],[2],[3],[0],[1,2],[1,0],[0,1]]
希望排序整个数组,先按照数组 元素个数 ,如果个数相同再 按照首个元素大小 。
array.sort_by {|a| [a.size, a[0]] }
得到不同数据的值:%w(a b c a c d).uniq
得到各个元素出现的个数:
count_hash = {}
%w(a b c a c d).each do |item|
key = item.to_sym
if count = count_hash[key]
count_hash[key] = count + 1
else
count_hash[key] = 1
end
end
题主应该是对这个有疑问 digit4 = $2 || "1", 这句的意思是 如果$1不为nil,则执行这句,重点是在$2不为nil的时候,digit4=$2,这个||是一个逻辑运算符,前面为真就直接返回结果,所以就把$2直接返回了,上面描述的情况对应于这样的输入 p han2num("千八百二十三")题主可以好好看看,如有问题请再联系我,祝顺利!