红宝石 |可枚举的 sort_by()函数
enumerable的sort_by()是 Ruby 中的一个内置方法,它使用一组键对 enum 进行排序,该键是通过将 enum 中的值映射到给定块而生成的。返回的结果不保证是稳定的,比较相等的时候是不稳定的。当没有给出块时,它返回一个枚举器。
Syntax: enu.sort_by { |obj| block }
Parameters: The function accepts a block.
Return Value: It returns the an array.
示例 1 :
# Ruby program for sort_by method in Enumerable
# Initialize
enu = [10, 14, 22, 19]
# Prints
# sorts by addition of digits
enu.sort_by {|obj| obj%10 + (obj/10)%10}
输出:
[10, 22, 14, 19]
示例 2 :
# Ruby program for sort_by method in Enumerable
# Initialize
enu = [10, 14, 22, 19]
# Prints
enu.sort_by
输出:
Enumerator: [10, 14, 22, 19]:sort_by