Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

244
Views
Devolver cero cuando no se puede localizar el valor de verdadero en una matriz de hashes

¿Necesito poder devolver cero cuando no puedo encontrar is_my_favorite? para tener un valor de verdadero y devolver el hash que es el favorito. Mi código actual devolverá el hash que es verdadero, pero si todos fueran falsos, por ejemplo, quiero devolver cero, pero no puedo encontrar una forma de hacerlo sin romper mi código, que actualmente hace la mitad de lo que Deseo.

 # array_of_hash_objects will look something like this: # [ # { name: 'Ruby', is_my_favorite?: true }, # { name: 'JavaScript', is_my_favorite?: false }, # { name: 'HTML', is_my_favorite?: false } # ] array_of_hash_objects.each do |item| item.each do |words| if words.one?(true) return item end end end end

He intentado esto:

 array_of_hash_objects.each do |item| item.each do |words| if words.one?(true) return item else return nil end end end end

pero esto vuelve

Falla/Error: expect(find_favorite(array)).to eq(expected_output)

 expected: nil got: [{:is_my_favorite?=>false, :name=>"Python"}, {:is_my_favorite?=>false, :name=>"JavaScript"}, {:is_my_favorite?=>false, :name=>"HTML"}]
over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Simplemente puede usar el método de find https://apidock.com/ruby/Enumerable/find

 array_of_hash_objects = [ { name: 'Ruby', is_my_favorite?: true }, { name: 'JavaScript', is_my_favorite?: false }, { name: 'HTML', is_my_favorite?: false } ] array_of_hash_objects.find { |item| item[:is_my_favorite?] }

Esto te dará:

 => [{:name=>"Ruby", :is_my_favorite?=>true}]

Ahora, si obtuviste una matriz con todos los valores falsos en el hash:

 array_of_hash_objects = [ { name: 'Ruby', is_my_favorite?: false }, { name: 'JavaScript', is_my_favorite?: false }, { name: 'HTML', is_my_favorite?: false } ] array_of_hash_objects.find { |item| item[:is_my_favorite?] }

Conseguirás:

 => nil
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!