是一种常见的需求,可以通过以下步骤实现:
class Post
attr_accessor :title, :author, :publish_time, :score
def initialize(title, author, publish_time, score)
@title = title
@author = author
@publish_time = publish_time
@score = score
end
end
# 假设有一组帖子数据
posts = [
Post.new("Post 1", "Author 1", Time.new(2022, 1, 1), 10),
Post.new("Post 2", "Author 2", Time.new(2022, 1, 2), 5),
Post.new("Post 3", "Author 3", Time.new(2022, 1, 3), 8)
]
# 根据帖子分数进行排序
sorted_posts = posts.sort_by { |post| post.score }.reverse
# 输出排序结果
sorted_posts.each do |post|
puts "#{post.title} - #{post.author} - #{post.publish_time} - #{post.score}"
end
以上代码创建了一个帖子类(Post),并使用sort_by
方法对帖子数组进行排序,排序依据是帖子的分数(score)。最后,按照排序结果输出帖子的相关信息。
这种排名方法适用于根据分数进行排名的场景,例如热门帖子排行榜、最新帖子排行榜等。
腾讯云相关产品和产品介绍链接地址:
请注意,以上仅为腾讯云的部分产品示例,其他云计算品牌商也提供类似的产品和服务。
领取专属 10元无门槛券
手把手带您无忧上云