哈希在数组中具有值作为值



我想在数组中找到一个特定的值作为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')}

最新更新