الفرق بين المراجعتين ل"Ruby/Array/select!"

من موسوعة حسوب
< Ruby‏ | Array
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>Array.select!‎</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف: Ruby Method تصنيف: Ruby...')
(لا فرق)

مراجعة 16:53، 8 سبتمبر 2018

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

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

 select! {|item| block }  ary or nil
select!  Enumerator

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

تعاد المصفوفة نفسها المعطاة بعد الإبقاء على العناصر التي أعيدت معها القيمة true وحذف العناصر التي أعيدت معها القيمة false عند تطبيق الكتلة block عليها، أو يعاد كائن من النوع Enumerator إن لم تعطَ الكتلة block.

أمثلة

أمثلة على استخدام التابع select!!‎:

 a = %w{ a b c d e f }
a.select! { |v| v =~ /[aeiou]/ }  #=> ["a", "e"]

انظر أيضًا

  • التابع select: يختار جميع عناصر المصفوفة المحققة لشرط معين ويضعها في مصفوفة جديدة.
  • التابع reject!!‎: يحذف جميع عناصر المصفوفة التي لم تحقق شرطًا محددًا.
  • التابع keep_if: يبقِي على جميع عناصر المصفوفة التي تحقق شرطًا معينًا ويحذف العناصر الأخرى المتبقية.
  • التابع delete_if: يحذف جميع عناصر المصفوفة التي تعيد الكتلة البرمجية المعطاة القيمة true عند تطبيقها على كل عنصر منها.

مصادر

  • قسم التابع select!‎ في الصنف Array في توثيق روبي الرسمي.