RosettaCodeData/Task/Sort-an-array-of-composite-structures/Ruby/sort-an-array-of-composite-structures.rb

12 lines
272 B
Ruby
Raw Permalink Normal View History

2023-07-01 11:58:00 -04:00
Person = Struct.new(:name,:value) do
def to_s; "name:#{name}, value:#{value}" end
end
list = [Person.new("Joe",3),
Person.new("Bill",4),
Person.new("Alice",20),
Person.new("Harry",3)]
puts list.sort_by{|x|x.name}
puts
puts list.sort_by(&:value)