私は自分の目的のために機能している方法を持っていますが、唯一のことは、何が起こっているのか本当にわからず、素人の言葉で説明を使用できるということです. 具体的には、最後に評価された行:
hash.map{ |k,v| v==max[1] ? k : nil }.compact.sort_by(&:length).first
これは私のコードです:
def self.largest_hash_key(hash)
max = hash.max_by{ |k,v| v }
seven = hash.max_by{ |k,v| k.length }.first
if seven.length == 7
seven
else
hash.map{ |k,v| v==max[1] ? k : nil }.compact.sort_by(&:length).first
end
end