红宝石 |哈希 keep_if()函数
Hash#keep_if()是一个 Hash 类方法,它只保留那些遵循块条件的键值对。
Syntax: Hash.keep_if()
Parameter: Hash values
block – condition
Return: key value pair that follows the block condition
示例 #1:
# Ruby code for Hash.keep_if() method
# declaring Hash value
a = {a:100, b:200}
# declaring Hash value
b = {a:100, c:300, b:200}
# declaring Hash value
c = {a:100}
# keep_if Value
puts "Hash a keep_if form : #{a.keep_if{|key| key != 100}}\n\n"
puts "Hash b keep_if form : #{b.keep_if{|key| key = 200}}\n\n"
puts "Hash c keep_if form : #{c.keep_if{|key| key != 200}}\n\n"
输出 :
Hash a keep_if form : {:a=>100, :b=>200}
Hash b keep_if form : {:a=>100, :c=>300, :b=>200}
Hash c keep_if form : {:a=>100}
示例 #2:
# Ruby code for Hash.keep_if() method
# declaring Hash value
a = { "a" => 100, "b" => 200 }
# declaring Hash value
b = {"a" => 100}
# declaring Hash value
c = {"a" => 100, "c" => 300, "b" => 200}
# keep_if Value
puts "Hash a keep_if form : #{a.keep_if{|key| key != 100}}\n\n"
puts "Hash b keep_if form : #{b.keep_if{|key| key = 200}}\n\n"
puts "Hash c keep_if form : #{c.keep_if{|value| value != 200}}\n\n"
输出 :
Hash a keep_if form : {"a"=>100, "b"=>200}
Hash b keep_if form : {"a"=>100}
Hash c keep_if form : {"a"=>100, "c"=>300, "b"=>200}