التابع Enumerable.minmax في روبي

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث

يبحث التابع minmax عن قيمة أصغر وأكبر عنصر من عناصر الكائن القابل للتعداد الذي استدعي معه ثم يعيدهما في مصفوفة. إن أعطيت كتلة، فسيعيد التابع أصغر وأكبر عنصر يحقق شرطًا معيَّنًا؛ أي تُجرَى عملية الموازنة عبر المعامل <=> بحسب العملية التي تنفذها الكتلة على كل عنصر والقيمة المقابلة التي تعيدها.

البنية العامة

minmax  [min, max]
minmax { |a, b| block }  [min, max]

القيمة المعادة

تعاد مصفوفة تحوي أصغر وأكبر عنصر من عناصر الكائن القابل للتعداد المعطى، أو أصغر وأكبر عنصر يحقق الشرط الذي تحدده الكتلة block إن أعطيت.

أمثلة

مثال على استعمال التابع minmax:

a = %w(albatross dog horse)
a.minmax                                  #=> ["albatross", "horse"]
a.minmax { |a, b| a.length <=> b.length } #=> ["dog", "albatross"]

انظر أيضًا

  • التابع max: يبحث عن قيمة أكبر عنصر من عناصر الكائن القابل للتعداد الذي استدعي معه ثم يعيده.
  • التابع max_by: يعيد العنصر الذي تعيد الكتلة المعطاة أكبر قيمة مقابلة له بعد تمرير عناصر الكائن القابل للتعداد إليها كلٌّ على حدة.
  • التابع min: يبحث عن قيمة أصغر عنصر من عناصر الكائن القابل للتعداد الذي استدعي معه ثم يعيده.
  • التابع min_by: يعيد العنصر الذي تعيد الكتلة المعطاة أًصغر قيمة مقابلة له بعد تمرير عناصر الكائن القابل للتعداد إليها كلٌّ على حدة.
  • التابع minmax_by: يعيد العنصرين الذيَن تعيد الكتلة المعطاة أًصغر وأكبر قيمة مقابلة لهما على التوالي بعد تمرير عناصر الكائن القابل للتعداد إليها كلٌّ على حدة.

مصادر