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

  • Living Waters

    Living Water

    9 AĞUSTOS 2006
  • SomeOne Pro

    SomeOne Pro

    25 EKİM 2013
  • vgeller1

    vgeller1

    22 Kasım 2009