我想在数组中找到一个特定的值作为hash中的值。如果我简单地使用ans.has_value?("car")
,它只能在不在数组中的情况下找到这样的值。但如果我使用ans.has_value?(["car"])
,它只能在只有一个["car"]
的情况下找到true
;如果数组中有两个或两个以上的项作为value,则返回false
。请告知如何在数组的多个项中查找值?
ans=Hash.new
ans["a"]=["car"]
ans["b"]=["scar"]
ans["a"]+=["car"]
puts ans.has_value?(["car"])
puts ans
print "Press ENTER to continue . . ."
gets
该输出:
虚假的{"a"=>["car","car"],"b"=>["scar"]}按ENTER继续。
这应该有效:
!!ans.detect{|_, value| value.include?('car')}