小编zha*_*hao的帖子

为什么 Ruby 哈希不是 last 方法?

我解决了一个问题,它需要取散列的最后一个键值对。例子:

hash =  { "aa" => { :count => 1, :width => 333 }, "bb" => { :count => 1, :width => 77 } }
Run Code Online (Sandbox Code Playgroud)

我需要结果

result = [ "bb" => { :count => 1, :width => 77 } ]
Run Code Online (Sandbox Code Playgroud)

哈希有第一种方法

hash.first
=> [ "aa" => { :count => 1, :width => 333 } ]
Run Code Online (Sandbox Code Playgroud)

我想使用该last方法,但出现错误

NoMethodError: undefined method `last' for #<Hash:0x00007f82c75a9988>
from (pry):19:in `__pry__'
Run Code Online (Sandbox Code Playgroud)

这是我的解决方案

result = [hash.stringify_keys.keys[1], hash.stringify_keys.values[1]]
Run Code Online (Sandbox Code Playgroud)

我的问题是为什么 Ruby 哈希没有最后一种方法。

ruby

1
推荐指数
1
解决办法
420
查看次数

标签 统计

ruby ×1