الدالة contentDeepToString()‎ في لغة Kotlin

من موسوعة حسوب
< Kotlin‏ | collections
مراجعة 07:17، 4 يوليو 2018 بواسطة جميل-بيلوني (نقاش | مساهمات) (مراجعة وتدقيق.)
اذهب إلى التنقل اذهب إلى البحث

تعيد الدالة contentDeepToString()‎ سلسلة نصية تمثِّل محتوى المصفوفة التي استُدعيت معها كما لو كانت قائمة. تعامل المصفوفات المُتشعبة مثل معاملة القوائم أيضًا.

إن حَوَت المصفوفة نفسها في أي مستوى من المستويات المتشعبة، فسيعاد ذلك المرجع (reference) بالشكل "[...]" لمنع العَودية (recursion).

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

inline fun <T> Array<out T>.contentDeepToString(): String

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

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

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

سلسلة نصية تمثل محتوى المصفوفة كما لو كانت قائمة.

أمثلة

استخدام الدالة ()contentDeepToString مع المصفوفات المتشعبة

تعرف الشيفرة الآتية مصفوفة باسم array باستخدام الدالة ()arrayOf ثم تستخدم الدالة ()contentDeepToString للحصول على سلسلة نصية تمثل تلك المصفوفة:

fun main(args: Array<String>) {
val array = arrayOf(
    intArrayOf(3, 7, 9),
    intArrayOf(0, 1, 0),
    intArrayOf(2, 4, 8)
)
println(array.contentDeepToString()) // [[3, 7, 9], [0, 1, 0], [2, 4, 8]]
}

انظر أيضًا

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

مصادر