Hash#keep_if() is a Hash class method which only keeps those key value pair that follows the block condition.
Syntax: Hash.keep_if()
Parameter: Hash values
block – conditionReturn: key value pair that follows the block condition
Example #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"
|
Output :
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}
Example #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"
|
Output :
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}