الفرق بين المراجعتين لصفحة: «Ruby/Array/Comparison»

من موسوعة حسوب
< Ruby‏ | Array
لا ملخص تعديل
طلا ملخص تعديل
 
(1 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: المعامل <=> الخاص بالصنف Array في روبي}}</noinclude>
<noinclude>{{DISPLAYTITLE: المعامل <code><=></code> الخاص بالصنف <code>Array</code> في روبي}}</noinclude>
[[تصنيف: Ruby]]
[[تصنيف: Ruby]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Operator]]
[[تصنيف: Ruby Array]]
[[تصنيف: Ruby Array]]
يعيد معامل الموازنة <code><=></code> عددً‎ا صحيحًا (<code>‎-1</code> أو <code>0</code> أو ‎<code>+1</code>) إذا كانت المصفوفة الأصلية أصغر من أو تساوي أو أكبر من المصفوفة الأخرى المعطاة على التوالي. يوازن كل كائن من كل مصفوفة باستخدام المعامل <code><=></code>.
يعيد معامل الموازنة <code><=></code> عددً‎ا صحيحًا (<code>‎-1</code> أو <code>0</code> أو ‎<code>+1</code>) إذا كانت المصفوفة الأصلية أصغر من أو تساوي أو أكبر من المصفوفة الأخرى المعطاة على التوالي. يوازن كل كائن من كل مصفوفة باستخدام المعامل <code><=></code>.
سطر 12: سطر 12:
  </syntaxhighlight>
  </syntaxhighlight>
==القيم المعادة==
==القيم المعادة==
تعاد إحدى القيم التالي: ‎<code>-1</code> أو <code>0</code> أو ‎<code>+1</code> عند الموازنة بين المصفوفة <code>ary</code> والمصفوفة <code>other_ary</code>، أو تُعاد القيمة <code>nil</code> إن لم تكن المصفوفة <code>other_ary</code> الثانية المعطاة مصفوفةً، أو إذا أعيدت القيمة <code>nit</code> عند الموازنة بين عنصرين من المصفوفتين.
تعاد إحدى القيم التالي: ‎<code>-1</code> أو <code>0</code> أو ‎<code>+1</code> عند الموازنة بين المصفوفة <code>ary</code> والمصفوفة <code>other_ary</code>، أو تُعاد القيمة <code>nil</code> إن لم تكن المصفوفة <code>other_ary</code> الثانية المعطاة مصفوفةً، أو إذا أعيدت القيمة <code>nil</code> عند الموازنة بين عنصرين من المصفوفتين.
==أمثلة==
==أمثلة==
أمثلة عن استخدام المعامل <code><=></code>:
أمثلة عن استخدام المعامل <code><=></code>:
سطر 20: سطر 20:
  </syntaxhighlight>
  </syntaxhighlight>
==انظر أيضًا==
==انظر أيضًا==
*المعامل [[Ruby/Array/union|<nowiki>|</nowiki>]]: يجمع عناصر مصفوفتين في مصفوفة واحدة جديدة مع استثناء العناصر المكررة والحفاظ على ترتيب العناصر وفقًا للمصفوفة الأولى المعطاة.
*المعامل [[Ruby/Array/union|<code><nowiki>|</nowiki></code>]]: يجمع عناصر مصفوفتين في مصفوفة واحدة جديدة مع استثناء العناصر المكررة والحفاظ على ترتيب العناصر وفقًا للمصفوفة الأولى المعطاة.
*المعامل [[Ruby/Array/append operator|>>]]: يضيف كائن مُحدَّد إلى نهاية المصفوفة الأصلية ثم يعيد المصفوفة نفسها، لذا يمكن تكرار هذا المعامل عدة مرات وبشكل متسلسل.
*المعامل [[Ruby/Array/append operator|<code>>></code>]]: يضيف كائنًا مُحدَّدًا إلى نهاية المصفوفة الأصلية ثم يعيد المصفوفة نفسها، لذا يمكن تكرار هذا المعامل عدة مرات وبشكل متسلسل.
*المعامل [[Ruby/Array/minus|-]]: يعيد مصفوفة جديدة تمثل نسخة من جميع عناصر المصفوفة الأصلية باستثناء العناصر المشتركة مع المصفوفة <code>other_ary</code> الأخرى.
*المعامل [[Ruby/Array/minus|<code>-</code>]]: يعيد مصفوفة جديدة تمثل نسخة من جميع عناصر المصفوفة الأصلية باستثناء العناصر المشتركة مع المصفوفة <code>other_ary</code> الأخرى.
*المعامل [[Ruby/Array/and|&]]: يعيد مصفوفةً جديدةً تحتوي على العناصر المشتركة بين مصفوفتين دون تكرارها.
*المعامل [[Ruby/Array/and|<code>&</code>]]: يعيد مصفوفةً جديدةً تحتوي على العناصر المشتركة بين مصفوفتين دون تكرارها.
*المعامل [[Ruby/Array/star|*]]: إن استعمل المعامل * مع مصفوفة <code>ary</code> وسلسلة نصية <code>str</code>، فسيُكافئ حينئذٍ العبارة <code>ary.[[Ruby/Array/join|join]](str)‎</code>. أمَّا إن استعمل مع مصفوفة <code>ary</code> وعدد <code>int</code>، فسيُعيد مصفوفة جديدة تتكرر فيها المصفوفة تلك عددًا من المرات مساويًا لذلك العدد المعطى.
*المعامل [[Ruby/Array/star|<code>*</code>]]: إن استعمل المعامل * مع مصفوفة <code>ary</code> وسلسلة نصية <code>str</code>، فسيُكافئ حينئذٍ العبارة <code>[[Ruby/Array/join|ary.join(str)]]‎</code>. أمَّا إن استعمل مع مصفوفة <code>ary</code> وعدد <code>int</code>، فسيُعيد مصفوفة جديدة تتكرر فيها المصفوفة تلك عددًا من المرات مساويًا لذلك العدد المعطى.


==مصادر==
==مصادر==
* [https://ruby-doc.org/core-2.5.1/Array.html#method-i-3C-3D-3E قسم المعامل <=> في الصنف Array في توثيق روبي الرسمي.]
* [https://ruby-doc.org/core-2.5.1/Array.html#method-i-3C-3D-3E قسم المعامل <=> في الصنف Array في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 06:47، 2 أكتوبر 2018

يعيد معامل الموازنة <=> عددً‎ا صحيحًا (‎-1 أو 0 أو ‎+1) إذا كانت المصفوفة الأصلية أصغر من أو تساوي أو أكبر من المصفوفة الأخرى المعطاة على التوالي. يوازن كل كائن من كل مصفوفة باستخدام المعامل <=>.

يوازن بين المصفوفات عنصرًا عنصرًا؛ بعبارة أخرى، يوازن العنصر الأول من المصفوفة الأولى مع العنصر الأول من المصفوفة الثانية باستخدام المعامل <=>، ثم يوازن العنصر الثاني فالثالث وهكذا دواليك. متى ما أعطيت نتيجة مغايرة للصفر لأيٍّ من تلك الموازنات التي تجرى على العناصر تباعًا (أي كان العنصرين الموازن بينهما غير متساويين مثلًا)، فستُعاد تلك النتيجة مباشرةً.

إن كانت جميع العناصر متساوية، فستعتمد النتيجة على موازنة طُولَي المصفوفتين. بناءً على ذلك، تكون مصفوفتان «متساويتان» وفقًا للمعامل <=> إذا، وفقط إذا، كان لهما نفس الطول وتساوى كل عنصر من إحداهما مع العنصر الذي يقابله من الأخرى.

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

 ary <=> other_ary  -1, 0, +1 or nil

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

تعاد إحدى القيم التالي: ‎-1 أو 0 أو ‎+1 عند الموازنة بين المصفوفة ary والمصفوفة other_ary، أو تُعاد القيمة nil إن لم تكن المصفوفة other_ary الثانية المعطاة مصفوفةً، أو إذا أعيدت القيمة nil عند الموازنة بين عنصرين من المصفوفتين.

أمثلة

أمثلة عن استخدام المعامل <=>:

 [ "a", "a", "c" ]    <=> [ "a", "b", "c" ]   #=> -1
[ 1, 2, 3, 4, 5, 6 ] <=> [ 1, 2 ]            #=> +1
[ 1, 2 ]             <=> [ 1, :two ]         #=> nil

انظر أيضًا

  • المعامل |: يجمع عناصر مصفوفتين في مصفوفة واحدة جديدة مع استثناء العناصر المكررة والحفاظ على ترتيب العناصر وفقًا للمصفوفة الأولى المعطاة.
  • المعامل >>: يضيف كائنًا مُحدَّدًا إلى نهاية المصفوفة الأصلية ثم يعيد المصفوفة نفسها، لذا يمكن تكرار هذا المعامل عدة مرات وبشكل متسلسل.
  • المعامل -: يعيد مصفوفة جديدة تمثل نسخة من جميع عناصر المصفوفة الأصلية باستثناء العناصر المشتركة مع المصفوفة other_ary الأخرى.
  • المعامل &: يعيد مصفوفةً جديدةً تحتوي على العناصر المشتركة بين مصفوفتين دون تكرارها.
  • المعامل *: إن استعمل المعامل * مع مصفوفة ary وسلسلة نصية str، فسيُكافئ حينئذٍ العبارة ary.join(str). أمَّا إن استعمل مع مصفوفة ary وعدد int، فسيُعيد مصفوفة جديدة تتكرر فيها المصفوفة تلك عددًا من المرات مساويًا لذلك العدد المعطى.

مصادر