作物哈希结构:Ruby on rails

Posted

技术标签:

【中文标题】作物哈希结构:Ruby on rails【英文标题】:Crop hash structure: Ruby on rails 【发布时间】:2014-09-08 11:37:17 【问题描述】:

我想使用特定范围的值从哈希表中删除数据。

例子:

hash = t:1, y:9, k:10, a:30, b:40, c:50, d:80, e:60, z:100, l:3, n:9, f:20

给定一个数字数组:array = [10, 30, 40, 50, 80, 60, 100](正好是表格中心的范围)

我希望结果是:

hash: k:10, a:30, b:40, c:50, d:80, e:60, z:100

注意从未消除结构中间的数据。

【问题讨论】:

【参考方案1】:

看看select method。

[6] pry(main)> hash.select  |k,v| array.include?(v) 
=> :k=>10, :a=>30, :b=>40, :c=>50, :d=>80, :e=>60, :z=>100

【讨论】:

如果我有重复的值怎么办?喜欢50, 50, 30, 32 如果数组中有重复的值,它将正常工作,include? 在询问时仍然为真。如果散列中有重复的值,它们将被选中并保存在散列中。【参考方案2】:
results = 
hash.each  |k, v| results[k] = v if array.include?(v) 
puts results

输出:

:k=>10, :a=>30, :b=>40, :c=>50, :d=>80, :e=>60, :z=>100

【讨论】:

【参考方案3】:
array.each_with_object()|e, h| h[hash.key(e)] = e if hash.value?(e)

【讨论】:

以上是关于作物哈希结构:Ruby on rails的主要内容,如果未能解决你的问题,请参考以下文章

如何计算 ruby​​ on rails 中的特定评分计数哈希?

Ruby On Rails:获取回形针图像的 md5 哈希

在 PHP 中匹配 128 个字符的密码哈希 - 使用 Ruby on Rails 加密

如何按此哈希数组进行分组(可枚举)[Ruby,Rails]

当我尝试从 ruby​​ on rails 上的表单获取输入时,我得到了简单名称的哈希数组瞬间。如何解决?

Ruby on Rails入门篇