الفرق بين المراجعتين لصفحة: «Kotlin/collections/contentEquals»
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>contentDeepEquals()</code> في لغة Kotlin}}</noinclude> تعيد الدالة <code>contentEquals()</code> الق...' |
جميل-بيلوني (نقاش | مساهمات) طلا ملخص تعديل |
||
(6 مراجعات متوسطة بواسطة 3 مستخدمين غير معروضة) | |||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: الدالة <code> | <noinclude>{{DISPLAYTITLE: الدالة <code>contentEquals()</code> في Kotlin}}</noinclude> | ||
تتحقَّق الدالة <code>contentEquals()</code> من تساوي [[Kotlin/Array|مصفوفتين]] بنيويًا (''structurally'' equal)، أي إن كان لهما نفس العناصر وبنفس العدد والترتيب. | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="kotlin"> | <syntaxhighlight lang="kotlin"> | ||
inline infix fun <T> Array<out T>. | inline infix fun <T> Array<out T>.contentEquals( | ||
other: Array<out T> | other: Array<out T> | ||
): Boolean | |||
inline infix fun ByteArray.contentEquals( | |||
other: ByteArray | |||
): Boolean | |||
inline infix fun ShortArray.contentEquals( | |||
other: ShortArray | |||
): Boolean | |||
inline infix fun IntArray.contentEquals( | |||
other: IntArray | |||
): Boolean | |||
inline infix fun LongArray.contentEquals( | |||
other: LongArray | |||
): Boolean | |||
inline infix fun FloatArray.contentEquals( | |||
other: FloatArray | |||
): Boolean | |||
inline infix fun DoubleArray.contentEquals( | |||
other: DoubleArray | |||
): Boolean | |||
inline infix fun BooleanArray.contentEquals( | |||
other: BooleanArray | |||
): Boolean | |||
inline infix fun CharArray.contentEquals( | |||
other: CharArray | |||
): Boolean | ): Boolean | ||
</syntaxhighlight> | </syntaxhighlight> | ||
'''الإصدار المطلوب:''' Kotlin 1.1 | |||
وجود الكلمة المفتاحية <code>inline</code> يدل على أنَّ الدالة مباشرة (للمزيد من التفاصيل، راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة)]]، ووجود الكلمة المفتاحية <code>infix</code> يدل على إمكانية استدعاء الدالة بنمط التدوين الداخلي (Infix notation)، أي من خلال حذف المعامل <code>.</code> والأقواس <code>()</code> المُستخدَمَين في الاستدعاء عادةً (راجع للمزيد من التفاصيل <nowiki/>[[Kotlin/functions#.D8.A7.D9.84.D8.AA.D8.AF.D9.88.D9.8A.D9.86 .D8.A7.D9.84.D8.AF.D8.A7.D8.AE.D9.84.D9.8A.D9.91 .28Infix notation.29|توثيق التدوين الداخلي)]]. | |||
== المعاملات == | |||
=== <code>other</code> === | |||
المصفوفة الأخرى المراد التحقق من تساويها بنيويًّا مع المصفوفة المعطاة. | |||
==القيم المعادة == | |||
==القيم | تُعاد القيمة المنطقية <code>true</code> إن كانت المصفوفتان المحددتان متساويتان بنيويًا (''structurally'' equal)، أي إن كان لهما نفس العناصر وبنفس العدد والترتيب، أو القيمة <code>false</code> خلاف ذلك. | ||
<code>true</code> | |||
==أمثلة== | ==أمثلة== | ||
تعرِّف الشيفرة الآتية [[Kotlin/Array|مصفوفتين]] لهما نفس العناصر وبنفس العدد والترتيب باستخدام الدالة <code>()arrayOf</code> ثمَّ تستخدم الدالة <code>()contentEquals</code> للتحقق من أنّ هاتين المصفوفتين متساويتان بنيويًّا:<syntaxhighlight lang="kotlin"> | |||
fun main(args: Array<String>) { | fun main(args: Array<String>) { | ||
val | val array1 = arrayOf(1, 2, 3, 4) | ||
val array2 = arrayOf(1,2,3,6) | val array2 = arrayOf(1, 2, 3, 4) | ||
val array3 = arrayOf(1, 2, 3, 6) | |||
println( | println(array1.contentEquals(array2)) // true | ||
println(array1.contentEquals(array3)) // false | |||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر أيضًا== | ==انظر أيضًا== | ||
*<code>[[Kotlin/collections/contentDeepEquals| | *الدالة <code>[[Kotlin/collections/contentDeepEquals|contentDeepEquals()]]</code>: تتحقَّق من تساوي مصفوفتين بالعُمق، أي أنَّهما تحتويان على نفس العناصر وبنفس الترتيب. | ||
* الدالة <code>[[Kotlin/collections/contentToString|contentToString()]]</code>: تعيد سلسلة نصية تمثل محتوى <nowiki/>[[Kotlin/Array|المصفوفة]] التي استُدعيت معها كما لو كانت قائمة. | |||
* الدالة <code>[[Kotlin/collections/contentHashCode|contentHashCode()]]</code>: تعيد شيفرة hash لمحتوى <nowiki/>[[Kotlin/Array|المصفوفة]] التي استُدعيت معها كما لو كانت قائمة. | |||
==مصادر== | ==مصادر== | ||
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/ | *[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/content-equals.html صفحة الدالة contentEquals() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin | [[تصنيف:Kotlin Function]] | ||
[[تصنيف:Kotlin Collection]] |
المراجعة الحالية بتاريخ 07:28، 8 سبتمبر 2018
تتحقَّق الدالة contentEquals()
من تساوي مصفوفتين بنيويًا (structurally equal)، أي إن كان لهما نفس العناصر وبنفس العدد والترتيب.
البنية العامة
inline infix fun <T> Array<out T>.contentEquals(
other: Array<out T>
): Boolean
inline infix fun ByteArray.contentEquals(
other: ByteArray
): Boolean
inline infix fun ShortArray.contentEquals(
other: ShortArray
): Boolean
inline infix fun IntArray.contentEquals(
other: IntArray
): Boolean
inline infix fun LongArray.contentEquals(
other: LongArray
): Boolean
inline infix fun FloatArray.contentEquals(
other: FloatArray
): Boolean
inline infix fun DoubleArray.contentEquals(
other: DoubleArray
): Boolean
inline infix fun BooleanArray.contentEquals(
other: BooleanArray
): Boolean
inline infix fun CharArray.contentEquals(
other: CharArray
): Boolean
الإصدار المطلوب: Kotlin 1.1
وجود الكلمة المفتاحية inline
يدل على أنَّ الدالة مباشرة (للمزيد من التفاصيل، راجع توثيق الدوال المباشرة)، ووجود الكلمة المفتاحية infix
يدل على إمكانية استدعاء الدالة بنمط التدوين الداخلي (Infix notation)، أي من خلال حذف المعامل .
والأقواس ()
المُستخدَمَين في الاستدعاء عادةً (راجع للمزيد من التفاصيل توثيق التدوين الداخلي).
المعاملات
other
المصفوفة الأخرى المراد التحقق من تساويها بنيويًّا مع المصفوفة المعطاة.
القيم المعادة
تُعاد القيمة المنطقية true
إن كانت المصفوفتان المحددتان متساويتان بنيويًا (structurally equal)، أي إن كان لهما نفس العناصر وبنفس العدد والترتيب، أو القيمة false
خلاف ذلك.
أمثلة
تعرِّف الشيفرة الآتية مصفوفتين لهما نفس العناصر وبنفس العدد والترتيب باستخدام الدالة ()arrayOf
ثمَّ تستخدم الدالة ()contentEquals
للتحقق من أنّ هاتين المصفوفتين متساويتان بنيويًّا:
fun main(args: Array<String>) {
val array1 = arrayOf(1, 2, 3, 4)
val array2 = arrayOf(1, 2, 3, 4)
val array3 = arrayOf(1, 2, 3, 6)
println(array1.contentEquals(array2)) // true
println(array1.contentEquals(array3)) // false
}
انظر أيضًا
- الدالة
contentDeepEquals()
: تتحقَّق من تساوي مصفوفتين بالعُمق، أي أنَّهما تحتويان على نفس العناصر وبنفس الترتيب. - الدالة
contentToString()
: تعيد سلسلة نصية تمثل محتوى المصفوفة التي استُدعيت معها كما لو كانت قائمة. - الدالة
contentHashCode()
: تعيد شيفرة hash لمحتوى المصفوفة التي استُدعيت معها كما لو كانت قائمة.