2010-05-16 6 views
0

J'ai un tableau d'utilisateurs qui sont amis. Appelons ce tableau:Comparer un tableau d'utilisateurs à un tableau de structures avec un objet utilisateur en tant qu'attribut, et renvoyer des correspondances dans un autre tableau de structures

friends 

J'ai alors un tableau de structures. Chaque structure a un objet utilisateur en tant qu'attribut (il possède également un attribut rank). Voici ce que la classe struct ressemble, pour ajouter un peu de contexte:

class Leader < Struct.new(:rank, :user); end 

Appelons ce tableau de struct:

all_leaders_plus_rank 

Je veux comparer amis et all_leaders_plus_rank, et ajoutez la correspond à all_leaders_plus_rank à une nouvelle matrice de structures appelée friendly_leaders.

Répondre

0
friendly_leaders = all_leaders_plus_rank.select do |lpr| 
    friends.include?(lpr.user) 
end 
Questions connexes