الدالة slice() في لغة Kotlin
تعيد الدالةslice()لائحة أو مصفوفة تحتوي عناصر المصفوفة التي استُدعيت عبرها والموجودة عند الفهارس التي يحددها الوسيط الممرّر indices.
البنية العامة
في حال تمرير كائن من النوع Collection كوسيط إلى الدالة slice()، فستعيد مصفوفة تحتوي عناصر المصفوفة التي استُدعيت عبرها والموجودة عند الفهارس التي يحددها الوسيط الممرّر 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 كوسيط إلى الدالة slice()، فستعيد لائحة تحتوي عناصر المصفوفة التي استُدعيت عبرها والموجودة عند الفهارس التي يحددها الوسيط الممرّر indices:
fun <T> Array<out T>.slice(indices: Iterable<Int>): List<T> (source)
fun ByteArray.slice(indices: Iterable<Int>): List<Byte> (source)
fun ShortArray.slice(indices: Iterable<Int>): List<Short> (source)
fun IntArray.slice(indices: Iterable<Int>): List<Int> (source)
fun LongArray.slice(indices: Iterable<Int>): List<Long> (source)
fun FloatArray.slice(indices: Iterable<Int>): List<Float> (source)
fun DoubleArray.slice(indices: Iterable<Int>): List<Double> (source)
fun BooleanArray.slice(indices: Iterable<Int>): List<Boolean> (source)
fun CharArray.slice(indices: Iterable<Int>): List<Char> (source)
fun <T> List<T>.slice(indices: Iterable<Int>): List<T>
القيم المٌعادة
تعيد الدالةsliceArray()لائحة أو مصفوفة تحتوي عناصر المصفوفة التي استُدعيت عبرها والموجودة عند الفهارس التي يحددها الوسيط الممرّر indices.
أمثلة
استخدام الدالة ()slice مع المصفوفات
تعرف الشيفرة الآتية مصفوفةباسم array مكونة من ستة عناصر باستخدام الدالة ()arrayOf، ثم تستخدم الدالة()slice على array مع تمرير مجال، ثم تطبع الناتج:
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():تعيد العنصر الوحيد الموجود في المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها، وفي حال تمرير شرط منطقيpredicateكمعامل (parameter) فستعيد العنصر الوحيد الذي يحقق ذلك الشرط المنطقي. أمّا في حال كان الكائن الذي استُدعيت عبره يحتوي أكثر من عنصر واحد (يحققpredicateفي حال تمريرها) أو لا يحتوي أي واحد (يحققpredicateفي حال تمريرها) فستعيد القيمة المعدومةnull.