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

من موسوعة حسوب

يستدعي التابع cycle الكتلة المعطاة مع كل عنصر من عناصر المُعدِّد الذي استدعي معه عددًا محدَّدًا من المرات أو إلى ما لانهاية إن مُرِّرت القيمة nil إليه أو لم يمُرَّر أي شيء.

إن مُرِّر إلى التابع عدد غير موجب أو كانت المجموعة (المُعدِّد) المعطاة فارغةً، فلن يفعل التابع أي شيء.

يحتفظ التابع cycle بالعناصر في مصفوفة داخلية، لذا لن يكون لتغيير المُعدِّد بعد تمرير أول عنصر منه أي تأثير.

إن لم تُعطَ أية كتلة، فسيعيد التابع كائنًا من النوع Enumerator.

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

cycle(n=nil) { |obj| block }  nil
cycle(n=nil)  an_enumerator

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

تعاد القيمة nil عند اكتمال حلقة التكرار دون مقاطعة.

أمثلة

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

a = ["a", "b", "c"]
a.cycle { |x| puts x }  # print, a, b, c, a, b, c,.. forever.
a.cycle(2) { |x| puts x }  # print, a, b, c, a, b, c.

انظر أيضًا

  • التابع count: يعيد عدد العناصر الموجودة في المُعدِّد الذي استدعي معه.
  • التابع drop_while: يحذف العناصر الأولى المحقِّقة لشرط معيِّن من المُعدِّد المعطى ثم يعيد مصفوفة تحوي العناصر المتبقية.

مصادر