الفرق بين المراجعتين ل"Ruby/Array/shift"
اذهب إلى التنقل
اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>Array.shift</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف: Ruby Method تصنيف: Ruby Array...') |
جميل-بيلوني (نقاش | مساهمات) ط (مراجعة وتدقيق.) |
||
(مراجعة متوسطة واحدة بواسطة مستخدم واحد آخر غير معروضة) | |||
سطر 4: | سطر 4: | ||
[[تصنيف: Ruby Array]] | [[تصنيف: Ruby Array]] | ||
يحذف التابع <code>shift</code> أول عنصر أو أول <code>n</code> عنصر من عناصر مصفوفة ثم يعيده أو يعيد مصفوفة تحوي العناصر المحذوفة. | يحذف التابع <code>shift</code> أول عنصر أو أول <code>n</code> عنصر من عناصر مصفوفة ثم يعيده أو يعيد مصفوفة تحوي العناصر المحذوفة. | ||
− | إن مرِّر عدد <code>n</code> كوسيط إلى التابع <code>shift</code>، فسيحذف أول <code>n</code> عنصر من المصفوفة ثمَّ يعيدها في مصفوفة جديدة وهذا مشابه تمامًا لاستدعاء التابع !<code>! | + | |
+ | إن مرِّر عدد <code>n</code> كوسيط إلى التابع <code>shift</code>، فسيحذف أول <code>n</code> عنصر من المصفوفة ثمَّ يعيدها في مصفوفة جديدة وهذا مشابه تمامًا لاستدعاء التابع<nowiki/>[[Ruby/Array/slice! | '''<code>slice!</code>''']] بالشكل: [[Ruby/Array/slice! |<code>array.slice!(0, n)</code>]]. ستحتوي المصفوفة الأصلية حينئذٍ العناصر المتبقية فقط دون العناصر التي أزيحت ووُضعت في المصفوفة الجديدة المُعادة. | ||
==البنية العامة== | ==البنية العامة== | ||
− | <syntaxhighlight lang="ruby"> shift → obj or nil | + | <syntaxhighlight lang="ruby">shift → obj or nil |
shift(n) → new_ary | shift(n) → new_ary | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==المعاملات== | ==المعاملات== | ||
− | <code>n</code> | + | |
+ | === <code>n</code> === | ||
عدد صحيح يمثل عدد العناصر الأولى المراد حذفها من المصفوفة المعطاة. | عدد صحيح يمثل عدد العناصر الأولى المراد حذفها من المصفوفة المعطاة. | ||
==القيم المعادة== | ==القيم المعادة== | ||
سطر 16: | سطر 18: | ||
==أمثلة== | ==أمثلة== | ||
أمثلة على استخدام التابع <code>shift</code>: | أمثلة على استخدام التابع <code>shift</code>: | ||
− | <syntaxhighlight lang="ruby"> args = [ "-m", "-q", "filename" ] | + | <syntaxhighlight lang="ruby">args = [ "-m", "-q", "filename" ] |
args.shift #=> "-m" | args.shift #=> "-m" | ||
args #=> ["-q", "filename"] | args #=> ["-q", "filename"] | ||
سطر 25: | سطر 27: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر أيضًا== | ==انظر أيضًا== | ||
− | * التابع [[Ruby/Array/unshift | <code>unshift</code>]]: يضيف الكائنات المُمرَّرة إليه إلى بداية المصفوفة التي استُدعيت معه مع إزاحة العناصر الأخرى إلى الأمام. | + | * التابع<nowiki/>[[Ruby/Array/unshift | <code>unshift</code>]]: يضيف الكائنات المُمرَّرة إليه إلى بداية المصفوفة التي استُدعيت معه مع إزاحة العناصر الأخرى إلى الأمام. |
− | * التابع [[Ruby/Array/pop | <code>pop</code>]]: يحذف آخر عنصر أو آخر <code>n</code> عنصر من مصفوفة ثم يعيده أو يعيدها في مصفوفة جديدة. | + | * التابع<nowiki/>[[Ruby/Array/pop | <code>pop</code>]]: يحذف آخر عنصر أو آخر <code>n</code> عنصر من مصفوفة ثم يعيده أو يعيدها في مصفوفة جديدة. |
− | * التابع | + | * التابع<nowiki/>[[Ruby/Array/drop | <code>drop</code>]]: يحذف أول <code>n</code> عنصر من المصفوفة ويعيد بقية العناصر في مصفوفة جديدة. |
− | * التابع | + | * التابع<nowiki/>[[Ruby/Array/delete_at | <code>delete_at</code>]]: يحذف العنصر من المصفوفة الموجود عند الفهرس المحدد [[Ruby/Array/index | <code>index</code>]]. |
− | + | * التابع<nowiki/>[[Ruby/Array/rotate | <code>rotate</code>]]: يعيد مصفوفة جديدة تحتوي عناصر المصفوفة التي استُدعيت معها مع إزاحة (تدوير) عناصرها ليكون العنصر ذو الفهرس الممرر إليها هو العنصر الأول في المصفوفة الجديدة. | |
==مصادر== | ==مصادر== | ||
− | * قسم التابع shift في الصنف Array في توثيق روبي الرسمي. | + | * [https://ruby-doc.org/core-2.5.1/Array.html#method-i-shift قسم التابع shift في الصنف Array في توثيق روبي الرسمي.] |
المراجعة الحالية بتاريخ 10:01، 3 أكتوبر 2018
يحذف التابع shift
أول عنصر أو أول n
عنصر من عناصر مصفوفة ثم يعيده أو يعيد مصفوفة تحوي العناصر المحذوفة.
إن مرِّر عدد n
كوسيط إلى التابع shift
، فسيحذف أول n
عنصر من المصفوفة ثمَّ يعيدها في مصفوفة جديدة وهذا مشابه تمامًا لاستدعاء التابع slice!
بالشكل: array.slice!(0, n)
. ستحتوي المصفوفة الأصلية حينئذٍ العناصر المتبقية فقط دون العناصر التي أزيحت ووُضعت في المصفوفة الجديدة المُعادة.
البنية العامة
shift → obj or nil
shift(n) → new_ary
المعاملات
n
عدد صحيح يمثل عدد العناصر الأولى المراد حذفها من المصفوفة المعطاة.
القيم المعادة
يعاد العنصر الأول المحذوف من المصفوفة المعطاة، أو تعاد مصفوفة جديدة تحوي العناصر n
الأولى المحذوفة من المصفوفة، أو تعاد القيمة nil
إن كانت المصفوفة فارغة.
أمثلة
أمثلة على استخدام التابع shift
:
args = [ "-m", "-q", "filename" ]
args.shift #=> "-m"
args #=> ["-q", "filename"]
args = [ "-m", "-q", "filename" ]
args.shift(2) #=> ["-m", "-q"]
args #=> ["filename"]
انظر أيضًا
- التابع
unshift
: يضيف الكائنات المُمرَّرة إليه إلى بداية المصفوفة التي استُدعيت معه مع إزاحة العناصر الأخرى إلى الأمام. - التابع
pop
: يحذف آخر عنصر أو آخرn
عنصر من مصفوفة ثم يعيده أو يعيدها في مصفوفة جديدة. - التابع
drop
: يحذف أولn
عنصر من المصفوفة ويعيد بقية العناصر في مصفوفة جديدة. - التابع
delete_at
: يحذف العنصر من المصفوفة الموجود عند الفهرس المحددindex
. - التابع
rotate
: يعيد مصفوفة جديدة تحتوي عناصر المصفوفة التي استُدعيت معها مع إزاحة (تدوير) عناصرها ليكون العنصر ذو الفهرس الممرر إليها هو العنصر الأول في المصفوفة الجديدة.