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

如何在Ruby中检测数组中的重复值?

发布时间:2020-12-17 04:40:13 所属栏目:百科 来源:网络整理
导读:假设我有一个看起来像这样的数组: a = [cat,dog,cat,mouse,rat,cat] 我如何循环,并做重复的事情 – 例如说删除它们? 换句话说,如果我做了a.each do | i |,我如何评估[0],反对[1],[2],a [3] …然后当我找到一个我想要,说一个[2]在这种情况下有第一个副本,然
假设我有一个看起来像这样的数组:
a = [cat,dog,cat,mouse,rat,cat]

我如何循环,并做重复的事情 – 例如说删除它们?

换句话说,如果我做了a.each do | i |,我如何评估[0],反对[1],[2],a [3] …然后当我找到一个我想要,说一个[2]在这种情况下有第一个副本,然后我把它推到一个堆栈或删除它或东西.

我知道如何评估键,而不是值……但是如何在同一个数组中相互评估值?

谢谢.

解决方法

您可以创建一个哈希来存储任何元素重复的次数.因此只需迭代数组一次.
h = Hash.new(0)
['a','b','c'].each{ |e| h[e] += 1 }

应该结果

{"a"=>1,"b"=>2,"c"=>1}

(编辑:李大同)

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

    推荐文章
      热点阅读