Ich habe folgendes:
array_of_hashes = [{:a=>10, :b=>20}, {:a=>11, :b=>21}, {:a=>13, :b=>23}]
Wie kann ich herausfinden, ob :a=>11
in array_of_hashes
vorhanden ist?
array_of_hashes.include?
scheint nicht zu funktionieren
Ich habe folgendes:
array_of_hashes = [{:a=>10, :b=>20}, {:a=>11, :b=>21}, {:a=>13, :b=>23}]
Wie kann ich herausfinden, ob :a=>11
in array_of_hashes
vorhanden ist?
array_of_hashes.include?
scheint nicht zu funktionieren
Sie haben nach einem booleschen Ergebnis im OQ gefragt, aber wenn Sie wirklich das Hash-Element selbst möchten, tun Sie dies:
array_of_hashes.detect { |h| h[:a] == 11 }
Wenn Sie das Ergebnis wirklich schnell haben möchten, könnten Sie das ursprüngliche Objekt gruppieren und dann das Ergebnis mit einem einzigen Hash-Lookup erhalten:
t = array_of_hashes.group_by { |x| x[:a] }
t[11]
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.