الفرق بين المراجعتين لصفحة: «Ruby/Array/fill»
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) طلا ملخص تعديل |
||
سطر 5: | سطر 5: | ||
يضبط التابع <code>fill</code> قيم عناصر محدَّدة أو جميع عناصر مصفوفة إلى القيمة الممرَّرة إليه (الأشكال الثلاث الأولى للتابع في قسم «البنية العامة»)، أو القيم التي تعيدها الكتلة البرمجية الممرَّرة إليه (الأشكال الثلاث المتبقية). | يضبط التابع <code>fill</code> قيم عناصر محدَّدة أو جميع عناصر مصفوفة إلى القيمة الممرَّرة إليه (الأشكال الثلاث الأولى للتابع في قسم «البنية العامة»)، أو القيم التي تعيدها الكتلة البرمجية الممرَّرة إليه (الأشكال الثلاث المتبقية). | ||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby"> fill(obj) → ary | <syntaxhighlight lang="ruby"> fill(obj) → ary | ||
سطر 23: | سطر 20: | ||
=== <code>start</code> === | === <code>start</code> === | ||
عدد صحيح يمثل فهرس العنصر المراد استبدال قيمته أو بداية العناصر المراد استبدال قيمتها. إن كانت قيمة هذا المعامل سالبة، فسيحسب موضع العنصر بدءًا من نهاية المصفوفة. | عدد صحيح يمثل فهرس العنصر المراد استبدال قيمته أو بداية العناصر المراد استبدال قيمتها. إن كانت قيمة هذا المعامل سالبة، فسيحسب موضع العنصر بدءًا من نهاية المصفوفة. | ||
إن أعطيت القيمة <code>nil</code> للوسيط <code>start</code>، فذلك يكافئ تمرير القيمة <code>0</code> لهذا الوسيط. وفي حال كانت قيمة الوسيط <code>start</code> سالبة، فسيُحسَب موضع كل عنصر يراد تبديل قيمته بدءًا من نهاية المصفوفة. | |||
=== <code>length</code> === | === <code>length</code> === | ||
عدد صحيح يمثل طول العناصر المراد استبدال قيمتها. | عدد صحيح يمثل طول العناصر المراد استبدال قيمتها. في حال إعطاء القيمة <code>nil</code> للوسيط <code>length</code>، فذلك يكافئ تمرير طول المصفوفة المعطاة. | ||
=== <code>rang</code> === | === <code>rang</code> === | ||
سطر 41: | سطر 40: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر أيضًا== | ==انظر أيضًا== | ||
* التابع [[Ruby/Array/map | <code>map</code>]]: يستدعي كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة ثمَّ يضع الناتج الذي تعيده هذه الكتلة لكل عنصر في مصفوفة جديدة وتعيدها. | * التابع<nowiki/>[[Ruby/Array/map | <code>map</code>]]: يستدعي كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة ثمَّ يضع الناتج الذي تعيده هذه الكتلة لكل عنصر في مصفوفة جديدة وتعيدها. | ||
* التابع<code>[[Ruby/Array/!collect|!collect]]</code>: يستدعي كتلة برمجية محددة مع كل عنصر من عناصر مصفوفة ثم يضع القيمة التي أعادتها تلك الكتلة مكان العنصر الذي استدعيت معه. | * التابع <code>[[Ruby/Array/!collect|!collect]]</code>: يستدعي كتلة برمجية محددة مع كل عنصر من عناصر مصفوفة ثم يضع القيمة التي أعادتها تلك الكتلة مكان العنصر الذي استدعيت معه. | ||
* التابع [[Ruby/Array/cycle | <code>cycle</code>]]: يستدعي كتلة برمجية محددة مع كل عنصر من عناصر المصفوفة عددًا محددًا من المرات أو عددًا لا نهائيًّا من المرات إن أعطيت القيمة <code>nil</code>. | * التابع<nowiki/>[[Ruby/Array/cycle | <code>cycle</code>]]: يستدعي كتلة برمجية محددة مع كل عنصر من عناصر المصفوفة عددًا محددًا من المرات أو عددًا لا نهائيًّا من المرات إن أعطيت القيمة <code>nil</code>. | ||
==مصادر== | ==مصادر== | ||
* [https://ruby-doc.org/core-2.5.1/Array.html#method-i-fill قسم التابع Array.fill في الصنف Array في توثيق روبي الرسمي.] | * [https://ruby-doc.org/core-2.5.1/Array.html#method-i-fill قسم التابع Array.fill في الصنف Array في توثيق روبي الرسمي.] |
المراجعة الحالية بتاريخ 07:16، 2 أكتوبر 2018
يضبط التابع fill
قيم عناصر محدَّدة أو جميع عناصر مصفوفة إلى القيمة الممرَّرة إليه (الأشكال الثلاث الأولى للتابع في قسم «البنية العامة»)، أو القيم التي تعيدها الكتلة البرمجية الممرَّرة إليه (الأشكال الثلاث المتبقية).
البنية العامة
fill(obj) → ary
fill(obj, start [, length]) → ary
fill(obj, range ) → ary
fill { |index| block } → ary
fill(start [, length] ) { |index| block } → ary
fill(range) { |index| block } → ary
المعاملات
obj
الكائن المراد أن يحل مكان عناصر محددة (باستعمال المعاملات start
و length
و rang
) في المصفوفة المعطاة.
start
عدد صحيح يمثل فهرس العنصر المراد استبدال قيمته أو بداية العناصر المراد استبدال قيمتها. إن كانت قيمة هذا المعامل سالبة، فسيحسب موضع العنصر بدءًا من نهاية المصفوفة.
إن أعطيت القيمة nil
للوسيط start
، فذلك يكافئ تمرير القيمة 0
لهذا الوسيط. وفي حال كانت قيمة الوسيط start
سالبة، فسيُحسَب موضع كل عنصر يراد تبديل قيمته بدءًا من نهاية المصفوفة.
length
عدد صحيح يمثل طول العناصر المراد استبدال قيمتها. في حال إعطاء القيمة nil
للوسيط length
، فذلك يكافئ تمرير طول المصفوفة المعطاة.
rang
مجالٌ يحدد بداية ونهاية العناصر المراد استبدال قيمتها.
القيم المعادة
تعاد المصفوفة نفسها بعد تبديل قيمة الوسيط obj
أو القيم التي تعيدها الكتلة block
(التي يُمرَّر إليها قيمة فهرس العنصر المستهدف) مكان جميع عناصر المصفوفة المعطاة إن لم يمرَّر أي وسيط آخر، أو بدءًا من العنصر ذي الفهرس start
وحتى العنصر ذي الفهرس length
، أو مكان العناصر الواقعة ضمن المجال rang
.
أمثلة
أمثلة على استخدام التابع fill
:
a = [ "a", "b", "c", "d" ]
a.fill("x") #=> ["x", "x", "x", "x"]
a.fill("z", 2, 2) #=> ["x", "x", "z", "z"]
a.fill("y", 0..1) #=> ["y", "y", "z", "z"]
a.fill { |i| i*i } #=> [0, 1, 4, 9]
a.fill(-2) { |i| i*i*i } #=> [0, 1, 8, 27]
انظر أيضًا
- التابع
map
: يستدعي كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة ثمَّ يضع الناتج الذي تعيده هذه الكتلة لكل عنصر في مصفوفة جديدة وتعيدها. - التابع
!collect
: يستدعي كتلة برمجية محددة مع كل عنصر من عناصر مصفوفة ثم يضع القيمة التي أعادتها تلك الكتلة مكان العنصر الذي استدعيت معه. - التابع
cycle
: يستدعي كتلة برمجية محددة مع كل عنصر من عناصر المصفوفة عددًا محددًا من المرات أو عددًا لا نهائيًّا من المرات إن أعطيت القيمةnil
.