الدالة contentHashCode()‎ في Kotlin

من موسوعة حسوب
مراجعة 07:28، 8 سبتمبر 2018 بواسطة جميل-بيلوني (نقاش | مساهمات)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

تشفِّر الدالة contentHashCode()‎ محتوى المصفوفة التي استُدعيت معها كما لو كانت قائمة إلى شيفرة Hash.

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

inline fun <T> Array<out T>.contentHashCode(): Int
inline fun ByteArray.contentHashCode(): Int
inline fun ShortArray.contentHashCode(): Int 
inline fun IntArray.contentHashCode(): Int 
inline fun LongArray.contentHashCode(): Int 
inline fun FloatArray.contentHashCode(): Int
inline fun DoubleArray.contentHashCode(): Int 
inline fun BooleanArray.contentHashCode(): Int 
inline fun CharArray.contentHashCode(): Int

الإصدار المطلوب: Kotlin 1.1

وجود الكلمة المفتاحية inline يدل على أنَّ الدالة مباشرة (راجع للمزيد من التفاصيل توثيق الدوال المباشرة).

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

 تعيد شيفرة Hash لمحتوى المصفوفة التي استُدعيت معها كما لو كانت قائمة.

أمثلة

تعرِّف الشيفرة الآتية مصفوفة باسم array باستخدام الدالة ()arrayOf ثمَّ تستخدم الدالة ()contentHashCode للحصول على شيفرة Hash لهذه المصفوفة:

fun main(args: Array<String>) {
    val array = arrayOf(1, 2, 3, 4)

    println(array.contentDeepHashCode()) // 955331
}

انظر أيضًا

  • الدالة contentDeepHashCode()‎: تعيد شيفرة hash لمحتوى المصفوفة التي استدعيت معها كما لو كانت قائمة.
  • التابع hashCode(): يعيد شيفرة Hash للكائن الذي استُدعي معه.
  • الدالة contentToString()‎: تعيد سلسلة نصية تمثل محتوى المصفوفة التي استُدعيت معها كما لو كانت قائمة.
  • الدالة contentEquals()‎: تتحقَّق إن كانت مصفوفتان متساويتين بنيويًا (structurally equal).

مصادر