SORU
4 Mart 2010, PERŞEMBE


Ruby Dizi find_first nesne?

Dizi belgelerinde bir şey mi kaçırdım? Bir nesne belli bir kriter tatmin edici içeren bir dizi var. Verimli bir şekilde bu nesneyi bulmak istiyorum. Doktorlar gelen en iyi fikir bu

candidates = my_array.select { |e| e.satisfies_condition? }
found_it = candidates.first if !candidates.empty?

Ama ben tatmin için iki nedeni vardır: (1) select yaptı bana traverse bütün dizi bile yapabiliriz kaçtı sonraki ilk vuruş, ve (2) gerekli bir kod satırı (bir durum) düzleştirmek için adaylar. Her iki işlem 0 olduğunu önbilgi veya 1 tatmin edici nesnelerle zarara neden oluyor.

İstediğim gibi bir şey:

array.find_first(block) ->cevaplar ya da engellemek doğru olarak değerlendirilen ilk nesneyi, o nesne de geçişi sonu yoktur.

Bunu kendim yazmak zorunda mıyım? Dizideki tüm diğer harika yöntemler bana var ve ben bunu göremiyorum.

Şimdiden teşekkürler, Dan

CEVAP
4 Mart 2010, PERŞEMBE


Ya soruyu anlamadım ya da Enumerable#find aradığınız şey.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Canceriansoul

    Canceriansou

    15 Ocak 2011
  • chickenby

    chickenby

    2 HAZİRAN 2008
  • Sarah's YouTube Channel

    Sarah's YouT

    27 Temmuz 2009