加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

比较两个哈希值与键和值 – Ruby

发布时间:2020-12-17 04:30:43 所属栏目:百科 来源:网络整理
导读:我有与本文中提到的相同的问题,但对于 Ruby而不是Perl. Comparing-two-hashes-with-the-keys-and-values – Perl 我想比较两个哈希值,首先查看它们是否存在于第一个哈希中的密钥,是否存在于第二个哈希值中,如果是,则比较值并打印哈希键的值,否则如果值不相等
我有与本文中提到的相同的问题,但对于 Ruby而不是Perl.
Comparing-two-hashes-with-the-keys-and-values – Perl

我想比较两个哈希值,首先查看它们是否存在于第一个哈希中的密钥,是否存在于第二个哈希值中,如果是,则比较值并打印哈希键的值,否则如果值不相等,则打印密钥它具有不相等的价值.

我看了很多建议,但找不到比较两个不同哈希值的答案.

解决方法

要查找在clients和events数组中显示的所有人,我会收集值然后比较它们:
clients = {"address"=>"street.name.1","name"=>"john.doe","age"=>25},{"address"=>"street.name2","name"=>"jane.doe","age"=>14},{"address"=>"street.name.3","name"=>"tom.smith","age"=>35}
events = {"type"=>"party","participant"=>"lisa.cohen","date"=>"05.05.13"},{"type"=>"corporate","participant"=>"john.doe","date"=>"26.05.13"},{"type"=>"meeting","participant"=>"james.edwards","date"=>"14.05.13"}

#Get all client names
client_names = clients.collect{ |c| c['name'] }
p client_names
#=> ["john.doe","jane.doe","tom.smith"]

#Get all participant names
event_participants = events.collect{ |e| e['participant'] }
p event_participants
#=> ["lisa.cohen","john.doe","james.edwards"]

#Determine names that appear in both
names_in_both = client_names & event_participants
p names_in_both
#=> ["john.doe"]

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读