الفرق بين المراجعتين لصفحة: «Ruby/Object/3C-3D-3E»
طلا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) طلا ملخص تعديل |
||
سطر 1: | سطر 1: | ||
{{DISPLAYTITLE:المعامل <code><=></code> في الصنف | {{DISPLAYTITLE:المعامل <code><=></code> في الصنف <code>Object</code> في روبي}} | ||
يتحقق المعامل <code><=></code> من تساوي كائنين بين بعضهما بعضًا (يشبه المعامل <code>==</code>). يُستخدَم من قبل عدّة توابعٍ لموازنة كائناتٍ مثل <code>Enumerable.sort</code>، و <code>Enumerable.max</code>، ...الخ. | يتحقق المعامل <code><=></code> من تساوي كائنين بين بعضهما بعضًا (يشبه المعامل <code>==</code>). يُستخدَم من قبل عدّة توابعٍ لموازنة كائناتٍ مثل <code>Enumerable.sort</code>، و <code>Enumerable.max</code>، ...الخ. | ||
المراجعة الحالية بتاريخ 07:08، 30 مارس 2019
يتحقق المعامل <=>
من تساوي كائنين بين بعضهما بعضًا (يشبه المعامل ==
). يُستخدَم من قبل عدّة توابعٍ لموازنة كائناتٍ مثل Enumerable.sort
، و Enumerable.max
، ...الخ.
يجب أن يعيد تنفيذ المعامل <=>
إحدى القيم التالية: -1
، أو 0
، أو 1
، أو nil
. القيمة -1
تعني أنَّ القيمة الأولى الواقعة على يسار المعامل أصغر من القيمة الأخرىالواقعه على يمينه. والقيمة 0
تشير إلى أنَّ القيمتين متساويتان، والقيمة 1 تشير إلى أنَّ القيمة الواقعه على يساره أكبر من القيمة الواقعة على يمينه. أخيرًا، تعني القيمة nil
أنَّه لا يمكن مقارنة القيمتين.
عندما تُعرِّف المعامل <=>
، يمكنك أن تحتوي فيه الوحدة Comparable
لتكسب إمكانية استخدام توابعه وهي: =>
، و >
، و ==
، و =<
، و <
، و ?between
.
البنية العامة
obj <=> other → 0 or nil
المعاملات
obj
الكائن الأول المراد موازنته مع الكائن other
.
other
الكائن الآخر المراد موازنته مع الكائن obj
.
القيم المعادة
تعاد القيمة 0
إذا كان المعاملان obj
و other
هما نفس الكائن (أي obj == other
)؛ خلاف ذلك، تعاد القيمة العدمية nil
.
انظر أيضًا
- المعامل
~!
: يتحقق من عدم تساوي كائنين.