الدالة copyOfRange()
في لغة Kotlin
< Kotlin | collections
تعيد الدالةcopyOfRange()
مصفوفة جديدة، والتي هي نسخة من مجال (range) من المصفوفة التي استُدعيت عبرها.
البنية العامة
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
للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع توثيق الدوال المباشرة (inline functions).
القيم المعادة
مصفوفة جديدة، والتي هي نسخة من مجال (range) من المصفوفة التي استُدعيت عبرها.
أمثلة
استخدام الدالة ()copyOf
مع المصفوفات
تعرف الشيفرة الآتية مصفوفة باسم array
مكونة من أربعة أعداد باستخدام الدالة ()arrayOf
، ثم تستخدم الدالة ()copyOfRange
للحصول على نسخة باسم array2
من من المجال المحدد (من العنصر ذي الفهرس 1 حتى العنصر ذي الفهرس 2) من المصفوفة array
ثم تطبع التمثيل النصي للمصفوفة array2
بواسطة الدالة contentToString
:
fun main(args: Array<String>) {
val array = arrayOf(1,2,3,4)
val array2 = array.copyOfRange(1,3)
println(array2.contentToString()) // [2, 3]
}