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

من موسوعة حسوب
< Kotlin‏ | collections
مراجعة 13:23، 13 مايو 2018 بواسطة محمد-بغات (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>copyOfRange()‎</code> في لغة Kotlin}}</noinclude> تعيد الدالة<code>copyOfRange()‎</code> نسخة من [...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)
اذهب إلى التنقل اذهب إلى البحث

تعيد الدالةcopyOfRange()‎ نسخة من المصفوفة التي استُدعيت عبرها. مع إمكانية تمرير newSize كمعامل (parameter) لتحديد حجم المصفوفة الناتجة.

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

inline fun <T> Array<T>.copyOf(): Array<T> 
inline fun ByteArray.copyOf(): ByteArray 
inline fun ShortArray.copyOf(): ShortArray 
inline fun IntArray.copyOf(): IntArray 
inline fun LongArray.copyOf(): LongArray 
inline fun FloatArray.copyOf(): FloatArray 
inline fun DoubleArray.copyOf(): DoubleArray 
inline fun BooleanArray.copyOf(): BooleanArray
inline fun CharArray.copyOf(): CharArray
inline fun ByteArray.copyOf(newSize: Int): ByteArray 
inline fun ShortArray.copyOf(newSize: Int): ShortArray 
inline fun IntArray.copyOf(newSize: Int): IntArray 
inline fun LongArray.copyOf(newSize: Int): LongArray 
inline fun FloatArray.copyOf(newSize: Int): FloatArray 
inline fun DoubleArray.copyOf(newSize: Int): DoubleArray 
inline fun BooleanArray.copyOf(newSize: Int): BooleanArray 
inline fun CharArray.copyOf(newSize: Int): CharArray 
inline fun <T> Array<T>.copyOf(newSize: Int): Array<T?>

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

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

نسخة من المصفوفة التي استُدعيت عبرها. مع إمكانية تمرير newSize كمعامل (parameter) لتحديد حجم المصفوفة.

أمثلة

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

تعرف الشيفرة الآتية مصفوفة باسم arrayمكونة من أربعة أعداد باستخدام الدالة ()arrayOf، ثم تستخدم الدالة ()copyOf للحصول على نسخة من المصفوفة array باسم array2ثم تطبع التمثيل النصي للمصفوفة array2 بواسطة الدالة contentToString:

fun main(args: Array<String>) {
val array = arrayOf(1,2,3,4)
val array2 = array.copyOf()
println(array2.contentToString()) // [1, 2, 3, 4]
}

استخدام الدالة ()copyOfRange مع المصفوفات مع تمرير وسيط لتحديد الحجم

تعرف الشيفرة الآتية مصفوفة باسم arrayمكونة من أربعة أعداد باستخدام الدالة ()arrayOf، ثم تستخدم الدالة ()copyOf للحصول على نسخة من العنصرين الأوليّين من المصفوفة array باسم array2ثم تطبع التمثيل النصي للمصفوفة array2 بواسطة الدالة contentToString:

fun main(args: Array<String>) {
val array = arrayOf(1,2,3,4)
val array2 = array.copyOf(2)
println(array2.contentToString()) // [1, 2]
}

انظر أيضًا

مصادر