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

من موسوعة حسوب
< Ruby‏ | Array
اذهب إلى التنقل اذهب إلى البحث
(مراجعة وتدقيق.)
 
سطر 7: سطر 7:
 
إن لم تمرَّر أية كتلة إلى التابع <code>select</code>، فسيعيد كائنًا من النوع <code>[[Ruby/Enumerator|Enumerator]]</code>.
 
إن لم تمرَّر أية كتلة إلى التابع <code>select</code>، فسيعيد كائنًا من النوع <code>[[Ruby/Enumerator|Enumerator]]</code>.
 
==البنية العامة==
 
==البنية العامة==
<syntaxhighlight lang="ruby"> select { |item| block } → new_ary
+
<syntaxhighlight lang="ruby">select { |item| block } → new_ary
 
select → Enumerator
 
select → Enumerator
 
  </syntaxhighlight>
 
  </syntaxhighlight>
سطر 14: سطر 14:
 
==أمثلة==
 
==أمثلة==
 
أمثلة على استخدام التابع <code>select</code>:
 
أمثلة على استخدام التابع <code>select</code>:
<syntaxhighlight lang="ruby"> [1,2,3,4,5].select { |num|  num.even?  }  #=> [2, 4]
+
<syntaxhighlight lang="ruby">[1,2,3,4,5].select { |num|  num.even?  }  #=> [2, 4]
  
 
a = %w{ a b c d e f }
 
a = %w{ a b c d e f }
سطر 21: سطر 21:
 
==انظر أيضًا==
 
==انظر أيضًا==
 
* التابع [[Ruby/Array/select!|<code>!select</code>]]: يختار جميع عناصر المصفوفة المحققة لشرط معين ويحذف العناصر الأخرى المتبقية التي لم تحقق هذا الشرط.
 
* التابع [[Ruby/Array/select!|<code>!select</code>]]: يختار جميع عناصر المصفوفة المحققة لشرط معين ويحذف العناصر الأخرى المتبقية التي لم تحقق هذا الشرط.
* التابع [[Ruby/Array/values_at | <code>values_at</code>]]: يجلب عنصرًا واحدًا أو أكثر ذي فهرس محدد من مصفوفة.  
+
* التابع<nowiki/>[[Ruby/Array/values_at | <code>values_at</code>]]: يجلب عنصرًا واحدًا أو أكثر ذي فهرس محدد من مصفوفة.  
* التابع [[Ruby/Array/sample | <code>sample</code>]]: يختار عنصرًا واحدًا أو عدة عناصر بشكل عشوائي من المصفوفة التي استُدعيت معه.
+
* التابع<nowiki/>[[Ruby/Array/sample | <code>sample</code>]]: يختار عنصرًا واحدًا أو عدة عناصر بشكل عشوائي من المصفوفة التي استُدعيت معه.
* التابع [[Ruby/Array/reject | <code>reject</code>]]: يعيد مصفوفة جديدة تحتوي جميع عناصر المصفوفة التي استُدعيت معها والتي لم تحقق شرطًا محددًا.
+
* التابع<nowiki/>[[Ruby/Array/reject | <code>reject</code>]]: يعيد مصفوفة جديدة تحتوي جميع عناصر المصفوفة التي استُدعيت معها والتي لم تحقق شرطًا محددًا.
* التابع [[Ruby/Array/keep_if | <code>keep_if</code>]]: يبقِي على جميع عناصر المصفوفة التي تحقق شرطًا معينًا ويحذف العناصر الأخرى المتبقية.
+
* التابع<nowiki/>[[Ruby/Array/keep_if | <code>keep_if</code>]]: يبقِي على جميع عناصر المصفوفة التي تحقق شرطًا معينًا ويحذف العناصر الأخرى المتبقية.
* التابع [[Ruby/Array/delete_if | <code>delete_if</code>]]:يحذف جميع عناصر المصفوفة التي تعيد الكتلة البرمجية المعطاة القيمة <code>true</code> عند تطبيقها على كل عنصر منها.
+
* التابع<nowiki/>[[Ruby/Array/delete_if | <code>delete_if</code>]]:يحذف جميع عناصر المصفوفة التي تعيد الكتلة البرمجية المعطاة القيمة <code>true</code> عند تطبيقها على كل عنصر منها.
 
==مصادر==
 
==مصادر==
 
* [https://ruby-doc.org/core-2.5.1/Array.html#method-i-select قسم التابع select في الصنف Array في توثيق روبي الرسمي.]
 
* [https://ruby-doc.org/core-2.5.1/Array.html#method-i-select قسم التابع select في الصنف Array في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 09:35، 3 أكتوبر 2018

يحدد التابع select جميع عناصر المصفوفة المحققة لشرط معين ويضعها في مصفوفة جديدة.

إن لم تمرَّر أية كتلة إلى التابع select، فسيعيد كائنًا من النوع Enumerator.

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

select { |item| block }  new_ary
select  Enumerator

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

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

أمثلة

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

[1,2,3,4,5].select { |num|  num.even?  }   #=> [2, 4]

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

انظر أيضًا

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

مصادر