code

특정 속성에 대한 최대 값을 가진 Ruby 배열의 요소 찾기

codestyles 2020. 10. 16. 07:27
반응형

특정 속성에 대한 최대 값을 가진 Ruby 배열의 요소 찾기


아마도이 질문에 대한 아주 간단한 대답이있을 것입니다. 그러나 저는 지금 당장 제 삶을 위해 그것을 알아낼 수 없습니다. 특정 유형의 객체에 대한 루비 배열이 있고 모두 특정 필드가있는 경우 해당 필드에 대해 가장 큰 값을 가진 배열 요소를 어떻게 찾습니까?


array.max_by do |element|
  element.field
end

또는:

array.max_by(&:field)

도움이 되나요?

my_array.max {|a,b| a.attr <=> b.attr }

(나는 귀하의 필드에 이름이 있다고 가정합니다 attr)


배열을 정렬 한 다음 최대, 최소, 두 번째로 큰 값 등을 얻을 수도 있습니다.

array = array.sort_by {|k,v| v}.reverse

puts hash[0]["key"]

참고 URL : https://stackoverflow.com/questions/8038993/finding-the-element-of-a-ruby-array-with-the-maximum-value-for-a-particular-attr

반응형