当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Ruby Hash.delete用法及代码示例


本文简要介绍ruby语言中 Hash.delete 的用法。

用法

delete(key) → value or nil
delete(key) {|key| ... } → object

删除给定 key 的条目并返回其关联值。

如果没有给出块并且找到key,则删除条目并返回相关值:

h = {foo: 0, bar: 1, baz: 2}
h.delete(:bar) # => 1
h # => {:foo=>0, :baz=>2}

如果没有给出块并且没有找到key,则返回nil

如果给出一个块并且找到key,则忽略该块,删除条目,并返回相关值:

h = {foo: 0, bar: 1, baz: 2}
h.delete(:baz) { |key| raise 'Will never happen'} # => 2
h # => {:foo=>0, :bar=>1}

如果给定一个块并且找不到key,则调用该块并返回该块的返回值:

h = {foo: 0, bar: 1, baz: 2}
h.delete(:nosuch) { |key| "Key #{key} not found" } # => "Key nosuch not found"
h # => {:foo=>0, :bar=>1, :baz=>2}

相关用法


注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 Hash.delete。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。