Cách nhanh nhất trong Ruby để lấy phần tử đếm được đầu tiên mà một khối trả về đúng là gì?Cách nhanh nhất trong Ruby để lấy phần tử đếm được đầu tiên mà một khối trả về đúng là gì?
Ví dụ:
arr = [12, 88, 107, 500]
arr.select {|num| num > 100 }.first # => 107
Tôi muốn làm điều này mà không cần chạy qua toàn bộ mảng, như select
ý chí, vì tôi chỉ cần trận đấu đầu tiên.
Tôi biết mình có thể làm each
và phá vỡ thành công, nhưng tôi nghĩ có một phương pháp riêng để thực hiện việc này; Tôi chỉ không tìm thấy nó trong tài liệu.
+1, tôi hoàn toàn quên mất 'tìm', duh. –
Ah! 'find' là phương pháp tôi đang cố nhớ. Silly tôi, tôi đã nhìn vào các tài liệu cho 'Array', không phải 'Enumerable'. –
cũng được biết đến trong thế giới Ruby là 'detect' – tokland