test.sort_by(&:first).map(&:last).join(' ')
К сожалению, в Ruby нет класса для представления Hash
записей (пар ключ-значение), но вместо этого используется двухэлементный массив. Если бы в Ruby был выделенный класс для пар ключ-значение, это было бы гораздо менее непрозрачно:
test.sort_by(&:key).map(&:value).join(' ')
И, конечно, тот факт, что Enumerable#sort_by
возвращает Array
, также весьма прискорбен. Если бы он возвратил SortedMap
или что-то подобное, это было бы еще лучше:
test.sort_by(&:key).values.join(' ')