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

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

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

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

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

المعاملات

n

عددٌ صحيحٌ يحدد عدد مرات تطبيق الكتلة block على كل عنصر من عناصر المصفوفة المعطاة. قيمته الافتراضية هي: nil؛ أي تكرار تطبيق الكتلة عددًا لا نهائيًّا من المرات.

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

تعاد القيمة nil عند انتهاء تطبيق الكتلة block على كل عنصر من عناصر المصفوفة المعطاة n مرة أو عددًا لا نهائيًّا من المرات إن كانت قيمة الوسيط n هي nil (القيمة الافتراضية)، أو يعاد كائن من النوع Enumerator إن لم تعطَ الكتلة block.

أمثلة

أمثلة على استخدام التابع 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.

انظر أيضًا

  • التابع collect‎: يستدعي كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة ثمَّ يعيد مصفوفة جديدة تحوي القيم التي تعيدها تلك الكتلة.
  • التابع each: يستدعي كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة، إذ تمرَّر قيمة ذلك العنصر كوسيط إلى الكتلة ثمَّ يعيد المصفوفة نفسها المعطاة.
  • التابع map: يستدعي التابع map الكتلة البرمجية المحددة على كل عنصر من عناصر المصفوفة، ويعيد مصفوفة جديدة تحتوي القيم المُعادة من قبل الكتلة.

مصادر