التابع Enumerable.sum
في روبي
< Ruby | Enumerable
اذهب إلى التنقل
اذهب إلى البحث
يعيد التابع sum
مجموع عناصر الكائن القابل للتعداد الذي استدعي معه.
إن أعطيت كتلة، فستُطبَّق الكتلة على كل عنصر قبل الإضافة.
قد لا يأخذ التابع sum
بالحسبان إعادة تعريف المعاملات +
مثل +
في الصنف Integer
.
البنية العامة
sum(init=0) → number
sum(init=0) {|e| expr } → number
المعاملات
init
القيمة البدائية المراد البدء بها في عملية الجمع. القيمة الافتراضية هي: 0.
القيمة المعادة
يعاد عدد يمثِّل ناتج جمع عناصر الكائن القابل للتعداد المعطى.
أمثلة
مثال على استعمال التابع sum
:
{ 1 => 10, 2 => 20 }.sum {|k, v| k * v } #=> 50
(1..10).sum #=> 55
(1..10).sum {|v| v * 2 } #=> 110
[Object.new].each.sum #=> TypeError
يمكن استعمال هذا التابع مع الكائنات الغير عددية عبر تحديد المعامل init
بشكل صريح:
{ 1 => 10, 2 => 20 }.sum([]) #=> [1, 10, 2, 20]
"a\nb\nc".each_line.lazy.map(&:chomp).sum("") #=> "abc"
انظر أيضًا
- التابع
group_by
: يجمِّع عناصر الكائن القابل للتعداد الذي استدعي معه في مجموعات بحسب النتيجة المقابلة لكل عنصر التي تعيدها الكتلة المعطاة بعد تمريره إليها. - التابع
max
: يبحث عن قيمة أكبر عنصر من عناصر الكائن القابل للتعداد الذي استدعي معه ثم يعيده. - التابع
reduce
: يجمع جميع عناصر الكائن القابل للتعداد الذي استدعي معه عبر تطبيق عملية ثنائية تُحدَّد بوساطة كتلة أو رمز يسمي تابعًا أو معاملًا.