我无法用传统的Ruby方法从数组user_list中删除所有重复的对象,从而达不到预期的结果。有没有一种聪明的方法来解决这个问题?Ruby从数组中删除重复的对象
users = []
user_list.each do |u|
user = User.find_by_id(u.user_id)
users << user
#users << user unless users.include?(user) # does not work
end
#users = users.uniq # does not work
'uniq'真的应该工作。你可以展示你测试它的步骤以及你的结果是什么?什么是用户数组中对象的类,以及它们的'=='运算符是如何定义的?这是Ruby on Rails吗? –
你使用的是Rails 4还是Rails 3?哦,对,你是否使用铁轨?如果不是,什么是User类? – nzifnab
嗨,大家好,这是一场虚惊!我用错误格式的数据调用了该方法。 users.uniq确实在工作!谢谢你的帮助。 – user2041343