我有两个数组包含有关人员的信息:

brad = ["Brad", 16]
andrew = ["Andrew", 43]

较大的数字可以通过以下方式找到:
max_num = [brad[1], andrew[1]].max

我想把名字和最大值匹配起来
puts "The max is #{max_num} and the record setter is #{name}"

我怎样才能做到这一点?这必须对列出的两个以上的数组有效,因此if max_num == brad[1] else等的答案将不起作用。

最佳答案

你可以通过:

[brad, andrew].max_by { |k,v| v } # => ["Andrew", 43]

所以
name, max_num = [brad, andrew].max_by { |k,v| v }
puts "The max is #{max_num} and the record setter is #{name}"

关于arrays - 从数组中查找最大数目并将字符串与它们相关联,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31644372/

10-08 21:04