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

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

تقطع الدالة sliceArray()‎ جزءًا محدَّدًا من المصفوفة التي استُدعيت معها ثمَّ تعيده في مصفوفة أو قائمة بحسب الوسيط الممرر إليها. 

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

إن مرِّر كائن من النوع Collection إلى الدالة sliceArray()‎، فستُعاد مصفوفة تحوي عناصر المصفوفة التي استُدعيت معها والموجودة في الموقع الذي يحدده الوسيط indices:

fun <T> Array<T>.sliceArray(
    indices: Collection<Int>
): Array<T> 
fun ByteArray.sliceArray(indices: Collection<Int>): ByteArray 
fun ShortArray.sliceArray(
    indices: Collection<Int>
): ShortArray 
fun IntArray.sliceArray(indices: Collection<Int>): IntArray 
fun LongArray.sliceArray(indices: Collection<Int>): LongArray 
fun FloatArray.sliceArray(
    indices: Collection<Int>
): FloatArray 
fun DoubleArray.sliceArray(
    indices: Collection<Int>
): DoubleArray 
fun BooleanArray.sliceArray(
    indices: Collection<Int>
): BooleanArray 
fun CharArray.sliceArray(indices: Collection<Int>): CharArray

وفي حال تمرير المجال indices إلى الدالة sliceArray()‎ كوسيط، فستُعاد قائمة تحوي عناصر المصفوفة التي استُدعيت معها والموجودة في ذلك المجال المحدَّد:

fun <T> Array<T>.sliceArray(indices: IntRange): Array<T> (source)
fun ByteArray.sliceArray(indices: IntRange): ByteArray (source)
fun ShortArray.sliceArray(indices: IntRange): ShortArray (source)
fun IntArray.sliceArray(indices: IntRange): IntArray (source)
fun LongArray.sliceArray(indices: IntRange): LongArray (source)
fun FloatArray.sliceArray(indices: IntRange): FloatArray (source)
fun DoubleArray.sliceArray(indices: IntRange): DoubleArray (source)
fun BooleanArray.sliceArray(indices: IntRange): BooleanArray (source)
fun CharArray.sliceArray(indices: IntRange): CharArray (source)

المعاملات

indices

كائن من النوع Collection أو مجال من النوع IntRange يحدد الجزء المراد اقتطاعه من المصفوفة أو القائمة المعطاة.

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

إن كان الوسيط indices من النوع Collection، فستُعاد مصفوفة جديدة تحوي جزءًا من المصفوفة المعطاة يحدده ذلك الوسيط. أمَّا إن كان الوسيط indices مجالًا، فستُعاد قائمةٌ تحوي جزءًا من المصفوفة المعطاة يقع في ذلك المجال.

أمثلة

استعمال الدالة ()sliceArray لجلب جزء من مصفوفة يقع بين العنصر الثاني والرابع:

import java.util.Arrays

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

    print (Arrays.toString(array.sliceArray(1..3))) // [2, 3, 4]
}

انظر أيضًا

  • الدالة slice()‎ : تقطع جزءًا محدَّدًا من المصفوفة أو القائمة التي استُدعيت معها ثمَّ تعيده في قائمة.
  • التابع Array.get()‎: تجلب قيمة العنصر في المصفوفة عند الفهرس المُحدَّد.
  • الخاصية ‎‎lastIndex: تجلب الفهرس الأخير لمصفوفة أو قائمة.

مصادر