الفرق بين المراجعتين لصفحة: «Kotlin/Comparable»

من موسوعة حسوب
لا ملخص تعديل
طلا ملخص تعديل
 
(2 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE:الصنف <code>‎‎Comparable</code>‎ في Kotlin}}</noinclude>
الأصناف التي ترث من الواجهة <code>Comparable</code> تملك ترتيبًا إجماليًّا مُعرَّفًا بين نُسخِها.<syntaxhighlight lang="kotlin">
interface Comparable<in T>
</syntaxhighlight><noinclude>{{DISPLAYTITLE:الصنف <code>‎‎Comparable</code>‎ في Kotlin}}</noinclude>


== الدوال ==
== الدوال ==
[[Kotlin/Comparable/compareTo|compareTo]]
[[Kotlin/Comparable/compareTo|<code>compareTo</code>]]


تقارن الدالة<code>compareTo()‎</code> بين قيمة العنصر الذي استُدعيت عبره والقيمة المُمرّرة، إذ تعيد القيمة <code>0</code> إن كانا متساويين، أو تعيد قيمة سلبية إن كانت قيمة العنصر الذي استُدعيت عبره أصغر من القيمة المُمرّرة، أو تعيد قيمة موجبة إن كانت قيمة العنصر الذي استُدعيت عبره أكبر من القيمة المُمرّرة .
توازن الدالة <code>compareTo()‎</code> بين الكائن الذي استُدعي معها والكائن المُمرّرة إليها ثمَّ تعيد القيمة 0 إن كانا متساويين، أو قيمة سالبة إن كانت القيمة الأولى (قيمة العنصر الذي استُدعيت معه) أصغر من القيمة الثانية، أو قيمة موجبة إن كانت القيمة الأولى أكبر من القيمة الثانية.


==الدوال الموروثة==
==الدوال الموروثة==
===<code>[[Kotlin/Any/equals|equals]]</code>===
===<code>[[Kotlin/Any/equals|equals]]</code>===
تبين الدالة <code>equals()</code>‎ إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعيت عبره.
تحدد الدالة <code>equals()</code>‎ إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعيت معها.
===<code>[[Kotlin/Any/hashCode|hashCode]]</code>===
===<code>[[Kotlin/Any/hashCode|hashCode]]</code>===
يعيد التابع <code>hashCode()</code>‎ قيمة الشيفرة hash code الخاصّة بالكائن الذي استُدعي عبره.
تعيد الدالة <code>hashCode()</code>‎ قيمة الشيفرة Hash الخاصّة بالكائن الذي استُدعي معها.
===<code>[[Kotlin/Any/toString|toString]]</code>===
===<code>[[Kotlin/Any/toString|toString]]</code>===
يعيد التابع <code>toString()‎</code> تمثيلًا نصيًا للكائن الذي يُستدعى عبره.
تحول الدالة <code>toString()‎</code> الكائن الذي يُستدعى معها إلى سلسلة نصية.
 
== الدوال الإضافية (Extension Functions) ==
 
=== <code>[[Kotlin/ranges/coerceAtLeast|coerceAtLeast]]</code> ===
 
=== <code>[[Kotlin/ranges/coerceAtMost|coerceAtMost]]</code> ===
 
=== <code>[[Kotlin/ranges/coerceIn|coerceIn]]</code> ===
 
=== <code>[[Kotlin/ranges/rangeTo|rangeTo]]</code> ===


== الوارثات (Inheritors) ==
== الوارثات (Inheritors) ==


===<code>[[Kotlin/Boolean/index|Boolean]]</code>===
===<code>[[Kotlin/Boolean|Boolean]]</code>===
يمثل النوع <code>boolean</code> قيمة منطقية تساوي إما <code>true</code> أو <code>false</code>، في بيئة التشغيل JVM، القيم غير المعدومة (non-nullable) لهذا النوع تُمثل كقيم للنوع <code>boolean</code>.
يمثل النوع <code>boolean</code> قيمة منطقية تساوي إما <code>true</code> أو <code>false</code>، في بيئة التشغيل JVM، القيم غير المعدومة (non-nullable) لهذا النوع تُمثل كقيم للنوع <code>boolean</code>.


===<code>[[Kotlin/Byte/index|Byte]]</code>===
===<code>[[Kotlin/Byte|Byte]]</code>===
الصنف <code>‎‎Byte</code>في Kotlin
يمثل الصنف <code>Byte</code> عددًا صحيحًا ذا إشارة (signed integer) بحجم 8 بت. في بيئة التشغيل JVM، القيم غير المعدومة (non-nullable) لهذا النوع تُمثَّل كقيم للنوع <code>byte</code> الأساسي.


===<code>[[Kotlin/Char/index|Char]]</code>===
===<code>[[Kotlin/Char|Char]]</code>===
الصنف <code>‎‎Char</code>في Kotlin
يمثل الصنف <code>Char</code> محرفًا بحجم 16 بت مرمزًا بالترميز الموحَّد (Unicode). في بيئة التشغيل JVM، القيم غير المعدومة (non-nullable) لهذا النوع تُمثَّل كقيم للنوع <code>char</code> الأساسي.


===<code>[[Kotlin/Double/index|Double]]</code>===
===<code>[[Kotlin/Double|Double]]</code>===
الصنف <code>‎‎Double</code>في Kotlin
يمثل الصنف <code>Double</code> عددًا عشريًّا مضاعفًا (دقة مضاعفة للأعداد بعد الفاصلة [double-precision floating point]) بحجم 64 بت مطابقًا للمعيار IEEE 754. 


===<code>[[Kotlin/Enum/index|Enum]]</code>===
===<code>[[Kotlin/Enum/index|Enum]]</code>===
الصنف <code>‎‎Enum</code>في Kotlin
يعدُّ الصنف <code>Enum</code> الصنف الأساس لكل أصناف الترقيم (enum classes). إن أردت الاطلاع على معلومات أوسع حول أصناف الترقيم، فاقرأ [http://kotlinlang.org/docs/reference/enum-classes.html هذا المرجع].


===<code>[[Kotlin/Float/index|Float]]</code>===
===<code>[[Kotlin/Float/index|Float]]</code>===
الصنف <code>‎‎Float</code>في Kotlin
يمثل الصنف <code>Float</code> عددًا عشريًّا (دقة أحادية للأعداد بعد الفاصلة [single-precision floating point]) بحجم 32 بت مطابقًا للمعيار IEEE 754. 
 
=== <code>[[Kotlin/Int|Int]]</code> ===
 
=== <code>[[Kotlin/KotlinVersion|KotlinVersion]]</code> ===
 
=== <code>[[Kotlin/Long|Long]]</code> ===
 
=== <code>[[Kotlin/Short|Short]]</code> ===
 
=== <code>[[Kotlin/String|String]]</code> ===
 
== مصادر ==
* [https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-comparable/index.html صفحة الصنف Comparable في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Classes]]
[[تصنيف:Kotlin Interface]]
[[تصنيف:Kotlin Comparable]]
[[تصنيف:Kotlin Comparable]]

المراجعة الحالية بتاريخ 12:24، 9 سبتمبر 2018

الأصناف التي ترث من الواجهة Comparable تملك ترتيبًا إجماليًّا مُعرَّفًا بين نُسخِها.

interface Comparable<in T>

الدوال

compareTo

توازن الدالة compareTo()‎ بين الكائن الذي استُدعي معها والكائن المُمرّرة إليها ثمَّ تعيد القيمة 0 إن كانا متساويين، أو قيمة سالبة إن كانت القيمة الأولى (قيمة العنصر الذي استُدعيت معه) أصغر من القيمة الثانية، أو قيمة موجبة إن كانت القيمة الأولى أكبر من القيمة الثانية.

الدوال الموروثة

equals

تحدد الدالة equals()‎ إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعيت معها.

hashCode

تعيد الدالة hashCode()‎ قيمة الشيفرة Hash الخاصّة بالكائن الذي استُدعي معها.

toString

تحول الدالة toString()‎ الكائن الذي يُستدعى معها إلى سلسلة نصية.

الدوال الإضافية (Extension Functions)

coerceAtLeast

coerceAtMost

coerceIn

rangeTo

الوارثات (Inheritors)

Boolean

يمثل النوع boolean قيمة منطقية تساوي إما true أو false، في بيئة التشغيل JVM، القيم غير المعدومة (non-nullable) لهذا النوع تُمثل كقيم للنوع boolean.

Byte

يمثل الصنف Byte عددًا صحيحًا ذا إشارة (signed integer) بحجم 8 بت. في بيئة التشغيل JVM، القيم غير المعدومة (non-nullable) لهذا النوع تُمثَّل كقيم للنوع byte الأساسي.

Char

يمثل الصنف Char محرفًا بحجم 16 بت مرمزًا بالترميز الموحَّد (Unicode). في بيئة التشغيل JVM، القيم غير المعدومة (non-nullable) لهذا النوع تُمثَّل كقيم للنوع char الأساسي.

Double

يمثل الصنف Double عددًا عشريًّا مضاعفًا (دقة مضاعفة للأعداد بعد الفاصلة [double-precision floating point]) بحجم 64 بت مطابقًا للمعيار IEEE 754. 

Enum

يعدُّ الصنف Enum الصنف الأساس لكل أصناف الترقيم (enum classes). إن أردت الاطلاع على معلومات أوسع حول أصناف الترقيم، فاقرأ هذا المرجع.

Float

يمثل الصنف Float عددًا عشريًّا (دقة أحادية للأعداد بعد الفاصلة [single-precision floating point]) بحجم 32 بت مطابقًا للمعيار IEEE 754. 

Int

KotlinVersion

Long

Short

String

مصادر