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

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

تنسخ الدالة copyOfRange()‎ مجالًا محدَّدًا من المصفوفة التي استُدعيت معها.

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

inline fun <T> Array<T>.copyOfRange(
    fromIndex: Int, 
    toIndex: Int
): Array<T> 
inline fun ByteArray.copyOfRange(
    fromIndex: Int, 
    toIndex: Int
): ByteArray 
inline fun ShortArray.copyOfRange(
    fromIndex: Int, 
    toIndex: Int
): ShortArray 
inline fun IntArray.copyOfRange(
    fromIndex: Int, 
    toIndex: Int
): IntArray 
inline fun LongArray.copyOfRange(
    fromIndex: Int, 
    toIndex: Int
): LongArray 
inline fun FloatArray.copyOfRange(
    fromIndex: Int, 
    toIndex: Int
): FloatArray 
inline fun DoubleArray.copyOfRange(
    fromIndex: Int, 
    toIndex: Int
): DoubleArray 
inline fun BooleanArray.copyOfRange(
    fromIndex: Int, 
    toIndex: Int
): BooleanArray 
inline fun CharArray.copyOfRange(
    fromIndex: Int, 
    toIndex: Int
): CharArray

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

المعاملات

fromIndex

عدد صحيح يشير إلى العنصر الذي يمثل بداية المجال المراد نسخه.

toIndex

عدد صحيح يشير إلى العنصر الذي يمثل نهاية المجال المراد نسخه (لا يدخل هذا العنصر ضمن المجال).

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

تُعاد مصفوفةٌ جديدةٌ تحتوي على نسخة من العناصر الواقعة بين العنصر ذي الفهرس fromIndex وحتى العنصر ذي الفهرس toIndex في المصفوفة المعطاة. 

أمثلة

استخدام الدالة ()copyOf مع المصفوفات

تعرِّف الشيفرة الآتية مصفوفة باسم array باستخدام الدالة ()arrayOf ثمَّ تستخدم الدالة ()copyOfRange لنسخ العنصر الثاني والثالث من تلك المصفوفة وتطبع سلسلة نصية تمثل هذه العناصر المنسوخة بواسطة الدالة ()contentToString:

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

    println(array2.contentToString()) // [2, 3]
}

انظر أيضًا

  • الدالة copyOf()‎: تنسخ الدالة كامل المصفوفة التي استُدعيت معها أو جزءًا منها. 
  • التابع Array.get()‎: يعيد قيمة العنصر ذي الفهرس (index) المعطى الموجود في مصفوفة.
  • الدالة count()‎: تعيد عدد عناصر المصفوفة أو المجموعة أو الخريطة التي استُدعيت معها. 

مصادر