আমি অ্যারে ডকুমেন্টেশনে কিছু মিস করছি? আমার একটি অ্যারে রয়েছে যা নির্দিষ্ট মানদণ্ডকে সন্তুষ্ট করতে এক অবধি অবজেক্টকে ধারণ করে। আমি সেই জিনিসটি দক্ষতার সাথে খুঁজে পেতে চাই। ডক্স থেকে আমার সেরা ধারণাটি হ'ল:
candidates = my_array.select { |e| e.satisfies_condition? }
found_it = candidates.first if !candidates.empty?
তবে আমি দুটি কারণে অসন্তুষ্ট:
- এটি
select
আমাকে পুরো অ্যারে ছাড়িয়েছে, যদিও প্রথম হিট হওয়ার পরে আমরা জামিন করতে পারতাম। - প্রার্থীদের সমতল করার জন্য আমার একটি কোড লাইন (একটি শর্ত সহ) প্রয়োজন needed
উভয় ক্রিয়াকলাপ 0 বা 1 সন্তুষ্টিজনক বস্তু আছে তা আগেই জ্ঞানের সাথে অপ্রয়োজনীয়।
আমি যা চাই তা হ'ল কিছু:
array.find_first(block)
যা শূন্য বা প্রথম অবজেক্ট দেয় যার জন্য ব্লকটি সত্যে মূল্যায়ন করে, বস্তুর ট্র্যাভারসাল শেষ করে।
এটা কি আমি নিজেই লিখব? অ্যারেতে থাকা এই সমস্ত দুর্দান্ত পদ্ধতি আমাকে ভাবতে বাধ্য করে যে এটি সেখানে আছে এবং আমি কেবল এটি দেখছি না।