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