نتائج البحث

اذهب إلى التنقل اذهب إلى البحث

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

تجمع الدالة reduceIndexed()‎ ناتج تطبيق عملية معينة على قيمة كل عنصر من عناصر المصفوفة أو المجموعة (بدءًا من اليسار إلى اليمين) المستدعاة معها وفهرس ذلك العنصر بشكل تراكمي والقيمة المجمَّعة الحالية. البنية العامة يمكن استدعاء الدالة reduceIndexed()‎ مع المصفوفات: inline fun <S, T : S> Array<out T>.reduceIndexed( operation: (index: Int, acc: S, T) -> S ): S inline fun ByteArray.reduceIndexed( operation: (index: Int, acc: Byte, Byte) -> Byte ): Byte inline fun ShortArray.reduceIndexed( ...

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

تجلب الدالة maxBy()‎ العنصر أو الزوج الأول من المصفوفة أو المجموعة أو الخريطة التي استُدعيت معها والذي أعيدت معه أكبر قيمة عند تطبيق دالة معيَّنة عليه. البنية العامة يمكن استدعاء الدالة maxBy()‎ مع المصفوفات و المجموعات والخرائط: inline fun <T, R : Comparable<R>> Array<out T>.maxBy( selector: (T) -> R ): T? inline fun <R : Comparable<R>> ByteArray.maxBy( selector: (Byte) -> R ): Byte? inline fun <R : Comparable<R>> ShortArray.maxBy( selector: (Short) -> R ): ...

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

ترشِّح الدالة filter()‎ عناصر المصفوفة أو المجموعة أو أزواج الخرائط المعطاة التي تحقِّق شرطًا معيَّنًا ثمّ تعيدها. البنية العامة يمكن استدعاء الدالة filter()‎ مع المصفوفات والمجموعات: inline fun <T> Array<out T>.filter( predicate: (T) -> Boolean ): List<T> inline fun ByteArray.filter( predicate: (Byte) -> Boolean ): List<Byte> inline fun ShortArray.filter( predicate: (Short) -> Boolean ): List<Short> inline fun IntArray.filter( predicate: (Int) -> Boolean ): List<Int> inline fun LongArray.filter( predicate: (Long) ...

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

تجلب الدالة getOrElse()‎ عنصرًا ذا فهرس مُحدَّد من المصفوفة أو المجموعة التي استُدعيت معها أو القيمة المقابلة لمفتاح محدَّد إن استدعيت مع خريطة. إن كان الفهرس المعطى يقع خارج حدود المصفوفة أو المجموعة أو كان المفتاح المعطى غير موجود في الخريطة، فسيُعاد ناتج استدعاء دالة معيَّنة معطاة. البنية العامة يمكن استدعاء الدالة getOrElse()‎ مع المصفوفات: inline fun <T> Array<out T>.getOrElse( index: Int, defaultValue: (Int) -> T ): T inline fun ByteArray.getOrElse( index: ...

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

تعيد الدالة filterIsInstance()‎ قائمة تحوي عناصر المصفوفة أو المجموعة المعطاة التي هي نسخةٌ (instance) من نوع أو صنفٍ معيّن. البنية العامة inline fun <reified R> Array<*>.filterIsInstance(): List<R> inline fun <reified R> Iterable<*>.filterIsInstance(): List<R> يمكن تمرير المعامل klass إلى الدالة filterIsInstance()‎: fun <R> Array<*>.filterIsInstance(klass: Class<R>): List<R> fun <R> Iterable<*>.filterIsInstance(klass: Class<R>): List<R> بيئة التشغيل المطلوبة: JVM وجود الكلمة المفتاحية inline يدل على أنَّ هذه الدالة مباشرة (لمزيد من التفاصيل، راجع توثيق الدوال المباشرة)، واستخدام الكلمة المفتاحية reified يسمح بالوصول إلى نوعٍ مُمرَّر كمتحولٍ وسيطٍ (parameter، راجع توثيق reified ...

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

تضيف الدالة joinToString()‎ بادئة ولاحقة إلى جميع عناصر المصفوفة أو المجموعة التي استُدعيت معها (أو جزءٍ منها) بعد فصل عناصرها بفاصلة معينة ثمَّ تضع الناتج في سلسة نصية جديدة تنشئها آنذاك. إن كانت المجموعة كبيرة، فيمكن تحديد جزءٍ أولي معين منها فقط لإضافته إلى السلسلة النصية؛ في هذه الحالة، تضاف سلسلة نصية معيَّنة، مثل "..." أو "...إلخ" إلى السلسلة النصية الناتجة للدلالة على وجود جزءٍ مقتطعٍ. البنية العامة fun <T> Array<out T>.joinToString( separator: CharSequence = ", ", ...

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

تعيد الدالة map()‎ قائمةً تحوي ناتج تطبيق الدالة المُمرّرة إليها على كل عنصر من عناصر المصفوفة أو المجموعة أو الخريطة التي استُدعيت معها. البنية العامة يمكن استدعاء الدالة map()‎ مع المصفوفات والمجموعات والخرائط: inline fun <T, R> Array<out T>.map( transform: (T) -> R ): List<R> inline fun <R> ByteArray.map(transform: (Byte) -> R): List<R> inline fun <R> ShortArray.map( transform: (Short) -> R ): List<R> inline fun <R> IntArray.map(transform: (Int) -> R): List<R> inline fun <R> LongArray.map(transform: (Long) ...

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

تعيد الدالة flatten()‎ قائمة واحدة تحوي جميع عناصر المصفوفات أو المجموعات المتشعبة ضمن المصفوفة أو المجموعة التي استُدعيت معها. البنية العامة يمكن استدعاء الدالة flatten()‎ مع المصفوفات: fun <T> Array<out Array<out T>>.flatten(): List<T> ويمكن استدعاؤها مع المجموعات: fun <T> Iterable<Iterable<T>>.flatten(): List<T> القيم المعادة تُعاد قائمة واحدة تحوي جميع عناصر المصفوفات أو المجموعات المتشعبة ضمن المصفوفة أو المجموعة المعطاة. أمثلة استخدام الدالة ()flatten مع المصفوفات: fun main(args: Array<String>) { val deepArray = arrayOf( ...

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

تحول الدالة toMap()‎ الكائن المستدعى معها إلى خريطة أو تضيف محتوى ذلك الكائن إلى خريطة موجودة مسبقًا. البنية العامة إن استدعيت الدالة toMap()‎ مع مصفوفة أو مجموعة تكرارية أو سلسلة مكونة من أزواج، فستعيد خريطة تحوي كل تلك الأزواج؛ تحافظ الخريطة المُعادة على نفس ترتيب تكرار الخريطة الأصلية: fun <K, V> Iterable<Pair<K, V>>.toMap(): Map<K, V> fun <K, V> Array<out Pair<K, V>>.toMap(): Map<K, V> fun <K, V> Sequence<Pair<K, V>>.toMap(): Map<K, V> وإن استدعيت الدالة toMap()‎ مع مصفوفة أو مجموعة تكرارية أو سلسلة ...

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

تجلب الدالة first()‎ أول عنصر من عناصر المصفوفة أو المجموعة التي استُدعيت معها إن لم يمرر إليها أي شيء، أو أول عنصر يحق شرطًا معيَّنًا في حال تمرير دالة منطقية إليها. إن كانت المصفوفة أو المجموعة التي استُدعيت الدالة first()‎ عبرها فارغة أو لم يكن هناك أي عنصر يحقق الدالة المنطقية الممرَّرة إليها، فستُطلِق الدالة الاستثناء NoSuchElementException. البنية العامة يمكن استدعاء الدالة first()‎ بدون تمرير أية معاملات: fun <T> Array<out T>.first(): T fun ByteArray.first(): Byte fun ShortArray.first(): Short fun IntArray.first(): ...

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

تشبه الدالة filterNotNullTo()‎ الدالة filterNotNull()‎ في جميع النواحي باستثناء أنَّها تضيف الناتج الذي تعيده إلى المعامل المُمرَّر إليها. الجدير بالذكر أنّه ينبغي أن يكون ذلك المعامل المعطى مجموعةً قابلةً للتغيير (MutableCollection). البنية العامة fun <C : MutableCollection<in T>, T : Any> Array<out T?>.filterNotNullTo( destination: C ): C fun <C : MutableCollection<in T>, T : Any> Iterable<T?>.filterNotNullTo( destination: C ): C المعاملات destination كائن موجود مسبقًا يمثل الوجهة المراد إضافة الناتج فيها. predicate دالةٌ تمثل الشرط المراد ...

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

تنسخ الدالة 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 ...

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

ترتِّب الدالة sortedByDescending()‎ جميع عناصر المصفوفة أو المجموعة التكرارية (Iterable) التي استُدعيت معها تنازليًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر ثمَّ تضع الناتج في قائمة. البنية العامة inline fun <T, R : Comparable<R>> Array<out T>.sortedByDescending( crossinline selector: (T) -> R? ): List<T> inline fun <R : Comparable<R>> ByteArray.sortedByDescending( crossinline selector: (Byte) -> R? ): List<Byte> inline fun <R : Comparable<R>> ShortArray.sortedByDescending( crossinline selector: (Short) -> R? ): List<Short> inline fun <R ...

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

تجلب الدالة indexOfLast()‎ فهرس آخر عنصر يحقِّق شرطًا معيَّنًا من المصفوفة أو المجموعة أو القائمة التي استُدعيت معها. البنية العامة يمكن استدعاء الدالة indexOfLast()‎ مع المصفوفات والمجموعات والقوائم: inline fun <T> Array<out T>.indexOfLast( predicate: (T) -> Boolean ): Int inline fun ByteArray.indexOfLast( predicate: (Byte) -> Boolean ): Int inline fun ShortArray.indexOfLast( predicate: (Short) -> Boolean ): Int inline fun IntArray.indexOfLast( predicate: (Int) -> Boolean ): Int inline fun LongArray.indexOfLast( predicate: ...

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

ترتِّب الدالة sortedArrayWith()‎ جميع عناصر المصفوفة التي استُدعيت معها وفقًا للمُقارِن المُمرّر إليها ثمَّ تضع الناتج في مصفوفة جديدة.  البنية العامة fun <T> Array<out T>.sortedArrayWith( comparator: Comparator<in T> ): Array<out T> المعاملات comparator المقارن الذي سترتَّب العناصر وفقًا له. القيمة المعادة تُعاد مصفوفة جديدة تضم عناصر المصفوفة المعطاة بعد ترتيبها وفقًا للمُقارِن comparator المعطى. أمثلة استعمال الدالة ()sortedArrayWith لترتيب عناصر مصفوفة وفقًا لناتج طرح قيمة العنصر اللاحق من قيمة العنصر السابق: import java.util.Arrays fun main(args: Array<String>) { val array = arrayOf(1, 9, -3, ...

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

تشبه الدالة filterIndexedTo()‎ الدالة filterIndexed()‎ تمامًا باستثناء أنها تضيف الناتج إلى كائن موجود مسبقًا بدلًا من أن تعيده.   البنية العامة inline fun <T, C : MutableCollection<in T>> Array<out T>.filterIndexedTo( destination: C, predicate: (index: Int, T) -> Boolean ): C inline fun <C : MutableCollection<in Byte>> ByteArray.filterIndexedTo( destination: C, predicate: (index: Int, Byte) -> Boolean ): C inline fun <C : MutableCollection<in Short>> ShortArray.filterIndexedTo( destination: C, ...

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

تشبه الدالة mapIndexedTo()‎ الدالةَ mapIndexed()‎ في جميع النواحي باستثناء أنها تضيف الناتج المعاد إلى المعامل الممرَّر إليها. البنية العامة يمكن استدعاء الدالةmapIndexedTo()‎ مع المصفوفات والمجموعات: inline fun <T, R, C : MutableCollection<in R>> Array<out T>.mapIndexedTo( destination: C, transform: (index: Int, T) -> R ): C inline fun <R, C : MutableCollection<in R>> ByteArray.mapIndexedTo( destination: C, transform: (index: Int, Byte) -> R ): C inline fun <R, C : ...

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

تعيد الدالة mapNotNull()‎ قائمةً تحوي ناتج تطبيق الدالة المُمرّرة إليها على كل عنصر من عناصر المصفوفة أو المجموعة أو الخريطة التي استُدعيت معها باستثناء القيم العدميَّة null التي تعيدها تلك الدالة. البنية العامة يمكن استدعاء الدالة mapNotNull()‎ مع المصفوفات والمجموعات والخرائط: inline fun <T, R : Any> Array<out T>.mapNotNull( transform: (T) -> R? ): List<R> inline fun <T, R : Any> Iterable<T>.mapNotNull( transform: (T) -> R? ): List<R> inline fun <K, V, R : Any> Map<out K, V>.mapNotNull( ...

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

تُنفّد الدالةُ forEach()‎ الدالةَ المُمرّرةَ إليها على كل عنصر من عناصر المصفوفة أو المجموعة أو الخريطة التي استُدعيت معها. البنية العامة يمكن استدعاء الدالة forEach()‎ مع المصفوفات، والمجموعات، والقواميس، والكائنات. inline fun <T> Array<out T>.forEach(action: (T) -> Unit) inline fun ByteArray.forEach(action: (Byte) -> Unit) inline fun ShortArray.forEach(action: (Short) -> Unit) inline fun IntArray.forEach(action: (Int) -> Unit) inline fun LongArray.forEach(action: (Long) -> Unit) inline fun FloatArray.forEach(action: (Float) -> Unit) inline fun DoubleArray.forEach(action: (Double) -> Unit) inline fun BooleanArray.forEach(action: (Boolean) -> Unit) inline ...

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

ترتِّب الدالة sortDescending()‎ المصفوفة أو القائمة المتغيرة (MutableList) التي استُدعيت معها تنازليًّا.  البنية العامة يمكن استدعاء الدالة sortDescending()‎ مع المصفوفات والقوائم المتغيرة:  fun <T : Comparable<T>> Array<out T>.sortDescending() fun ByteArray.sortDescending() fun ShortArray.sortDescending() fun IntArray.sortDescending() fun LongArray.sortDescending() fun FloatArray.sortDescending() fun DoubleArray.sortDescending() fun CharArray.sortDescending() fun <T : Comparable<T>> MutableList<T>.sortDescending() أمثلة استعمال الدالة ()sortDescending لترتيب عناصر مصفوفة تنازليًّا: import java.util.Arrays fun main(args: Array<String>) { val array = arrayOf(1, 9, -3, 7, 5, 6) array.sortDescending() print(Arrays.toString(array)) // [9, ...

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

تجلب الدالة maxWith()‎ العنصر أو الزوج الأول من المصفوفة أو المجموعة أو الخريطة التي استُدعيت معها والذي له أكبر قيمة بحسب الموازن comparator المعطى. البنية العامة يمكن استدعاء الدالة maxWith()‎ مع المصفوفات و المجموعات والخرائط: fun <T> Array<out T>.maxWith( comparator: Comparator<in T> ): T? fun ByteArray.maxWith(comparator: Comparator<in Byte>): Byte? (source) fun ShortArray.maxWith( comparator: Comparator<in Short> ): Short? fun IntArray.maxWith(comparator: Comparator<in Int>): Int? (source) fun LongArray.maxWith(comparator: Comparator<in Long>): Long? (source) fun FloatArray.maxWith( comparator: Comparator<in Float> ): Float? fun DoubleArray.maxWith( ...

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

تعيد الدالة dropLast()‎ قائمة تحوي جميع عناصر المصفوفة أو المجموعة التي استُدعيت معها باستثناء آخر n عنصر. البنية العامة fun <T> Array<out T>.dropLast(n: Int): List<T> fun ByteArray.dropLast(n: Int): List<Byte> fun ShortArray.dropLast(n: Int): List<Short> fun IntArray.dropLast(n: Int): List<Int> fun LongArray.dropLast(n: Int): List<Long> fun FloatArray.dropLast(n: Int): List<Float> fun DoubleArray.dropLast(n: Int): List<Double> fun BooleanArray.dropLast(n: Int): List<Boolean> fun CharArray.dropLast(n: Int): List<Char> fun <T> List<T>.dropLast(n: Int): List<T> المعاملات n عدد صحيح يمثل عدد العناصر المراد حذفها من نهاية المصفوفة أو المجموعة المعطاة. القيم المعادة تُعاد ...

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

تتحقَّق الدالة single()‎ من حواية المصفوفة أو المجموعة أو القائمة التي استُدعيت معها عنصرًا واحدًا فقط أو عنصرًا واحدًا محققًا لشرط معيَّن ثمَّ تعيده أو تطلق استثناءً خلاف ذلك. البنية العامة إن استدعيت الدالة single()‎ مع مصفوفة أو مجموعة أو قائمة دون تمرير أي معامل، فستتحقَّق من احتواء تلك المصفوفة أو المجموعة أو القائمة على عنصر واحد فقط ثمَّ تعيده. وفي حال كانت تلك المصفوفة أو المجموعة أو القائمة فارغةً أو تحوي أكثر من عنصر واحد، فستطلق الدالة single()‎ استثناءً: fun <T> Array<out T>.single(): T fun ByteArray.single(): ...

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

تعيد الدالة dropLastWhile()‎ قائمةً تحوي جميع عناصر المصفوفة أو المجموعة التي استُدعيت معها باستثناء العناصر الأخيرة التي تحقق شرطًا معيَّنًا. البنية العامة inline fun <T> Array<out T>.dropLastWhile( predicate: (T) -> Boolean ): List<T> inline fun ByteArray.dropLastWhile( predicate: (Byte) -> Boolean ): List<Byte> inline fun ShortArray.dropLastWhile( predicate: (Short) -> Boolean ): List<Short> inline fun IntArray.dropLastWhile( predicate: (Int) -> Boolean ): List<Int> inline fun LongArray.dropLastWhile( predicate: (Long) -> Boolean ): List<Long> inline fun ...

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

تبحث الدالة findLast()‎ على عنصر محدَّد ضمن عناصر المصفوفة أو المجموعة التي استُدعيت معها ثمَّ تعيد آخر ظهور له. البنية العامة inline fun <T> Array<out T>.findLast( predicate: (T) -> Boolean ): T? inline fun ByteArray.findLast( predicate: (Byte) -> Boolean ): Byte? inline fun ShortArray.findLast( predicate: (Short) -> Boolean ): Short? inline fun IntArray.findLast( predicate: (Int) -> Boolean ): Int? inline fun LongArray.findLast( predicate: (Long) -> Boolean ): Long? inline fun ...

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

تجمع الدالة reduceRight()‎ بشكل تراكمي ناتج تطبيق عملية معيَّنة على قيمة كل عنصر من عناصر المصفوفة أو المجموعة (بدءًا من اليمين إلى اليسار) المستدعاة معها والقيمة التراكمية الحالية.  البنية العامة inline fun <S, T : S> Array<out T>.reduceRight( operation: (T, acc: S) -> S ): S inline fun ByteArray.reduceRight( operation: (Byte, acc: Byte) -> Byte ): Byte inline fun ShortArray.reduceRight( operation: (Short, acc: Short) -> Short ): Short inline fun IntArray.reduceRight( ...

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

تشبه الدالة mapTo()‎ الدالة map()‎ باستثناء أنَّها تضيف الناتج المعاد إلى المعامل المُمرَّر إليها بدلًا من وضعه في قائمة. البنية العامة يمكن استدعاء الدالة mapTo()‎ مع المصفوفات والمجموعات والخرائط: inline fun <T, R, C : MutableCollection<in R>> Array<out T>.mapTo( destination: C, transform: (T) -> R ): C inline fun <R, C : MutableCollection<in R>> ByteArray.mapTo( destination: C, transform: (Byte) -> R ): C inline fun <R, C : ...

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

تعيد الدالة filterNotNull()‎ جميع عناصر المصفوفة أو المجموعة المعطاة باستثناء تلك ذات القيمة null. البنية العامة fun <T : Any> Array<out T?>.filterNotNull(): List<T> fun <T : Any> Iterable<T?>.filterNotNull(): List<T> القيم المعادة تُعاد قائمة تحوي جميع عناصر المصفوفة أو المجموعة المعطاة باستثناء تلك ذات القيمة null. أمثلة تعرف الشيفرة الآتية مصفوفة باسم array باستخدام الدالة ()arrayOf، ثم تستخدم الدالة ()filterNotNull لاستبعاد العناصر ذات القيمة null: fun main(args: Array<String>) { val array = arrayOf(1, 2, 3, null, 5, 6) ...

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

تشبه الدالة groupByTo()‎ الدالة groupBy()‎ في جميع النواحي باستثناء أنَّها تضيف الناتج المعاد إلى المعامل الممرَّر إليها. البنية العامة إن مُرِّر إلى الدالة groupBy()‎ المعامل destination والمعامل keySelector فقط، فستُجمّع عناصر المصفوفة أو المجموعة المعطاة بحسب المفتاح الذي تعيده الدالة keySelector()‎ المطبقة على كل عنصر من تلك العناصر ثمَّ تضيف الخريطة الناتجة التي تحوي مجموعاتٍ مفتاحُ كلِّ واحدةٍ منها مرتبطٌ بقائمة من العناصر المقابلة إلى المعامل destination. inline fun <T, K, M : MutableMap<in K, MutableList<T>>> Array<out T>.groupByTo( ...

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

تجمع الدالة reduceRightIndexed()‎ الناتج التراكمي لتطبيق عملية معينة على قيمة كل عنصر من عناصر المصفوفة أو المجموعة (بدءًا من اليمين إلى اليسار) المستدعاة معها وفهرس ذلك العنصر والقيمة المجمَّعة الحالية.  البنية العامة يمكن استعمال الدالة reduceRightIndexed()‎ مع المصفوفات: inline fun <S, T : S> Array<out T>.reduceRightIndexed( operation: (index: Int, T, acc: S) -> S ): S inline fun ByteArray.reduceRightIndexed( operation: (index: Int, Byte, acc: Byte) -> Byte ): Byte inline fun ShortArray.reduceRightIndexed( operation: ...

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

تقسم الدالة partition()‎ المصفوفة أو المجموعة التي استُدعيت معها إلى قسمين؛ الأول يضم العناصر التي تحقِّق شرطًا محدَّدًا، والثاني يضم العناصر الأخرى المتبقيَّة. البنية العامة يمكن استدعاء الدالة partition()‎ مع المصفوفات والمجموعات: inline fun <T> Array<out T>.partition( predicate: (T) -> Boolean ): Pair<List<T>, List<T>> inline fun ByteArray.partition( predicate: (Byte) -> Boolean ): Pair<List<Byte>, List<Byte>> inline fun ShortArray.partition( predicate: (Short) -> Boolean ): Pair<List<Short>, List<Short>> inline fun IntArray.partition( predicate: (Int) -> Boolean ): ...

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

تجلب الدالة elementAtOrElse()‎ عنصرًا ذي فهرس معيَّن من المصفوفة أو المجموعة التي استُدعيت معها. إن كان الفهرس المعطى خارج حدود المصفوفة أو المجموعة، فستُعيد الدالة ناتج استدعاء دالة معينة. البنية العامة يمكن استدعاء الدالة elementAtOrElse()‎ مع المصفوفات: inline fun <T> Array<out T>.elementAtOrElse( index: Int, defaultValue: (Int) -> T ): T inline fun ByteArray.elementAtOrElse( index: Int, defaultValue: (Int) -> Byte ): Byte inline fun ShortArray.elementAtOrElse( index: Int, ...

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

تضيف الدالة joinTo()‎ بادئة ولاحقة إلى جميع عناصر المصفوفة أو المجموعة التي استُدعيت معها (أو جزءٍ منها) وتفصلها بفاصلة معينة ثمَّ تضيفها إلى سلسة نصية موجودة مسبقًا. إن كانت المجموعة كبيرة، فيمكن تحديد جزءٍ أولي معين منها فقط لإضافته إلى السلسلة النصية؛ في هذه الحالة، تضاف سلسلة نصية معينة، مثل "..." أو "...إلخ" إلى السلسلة النصية الناتجة للدلالة على وجود جزء مقتطع. البنية العامة fun <T, A> Array<out T>.joinTo( buffer: A, separator: CharSequence ...

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

تنشئ الدالة zip()‎ أزواجًا من عناصر كائنين لها نفس الفهرس، أو تنشئ قيمًا عبر تمرير عناصر لها نفس الفهرس تجلب من كائنين مختلفين إلى دالة معينة. البنية العامة إن استدعيت الدالة zip()‎ مع مصفوفة ومع تمرير مصفوفة أخرى إليها كوسيط، فستشكل أزواجًا من عناصر هاتين المصفوفتين التي لها نفس الفهرس وتضعها في قائمة؛ طول القائمة المعادة يساوي طول أٌقصرهما. infix fun <T, R> Array<out T>.zip( other: Array<out R> ): List<Pair<T, R>> infix fun <R> ByteArray.zip( ...

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

ترتِّب الدالة sortedArrayDescending()‎ جميع عناصر المصفوفة التي استُدعيت معها تنازليًّا ثمَّ تضع الناتج في مصفوفة جديدة.  البنية العامة fun <T : Comparable<T>> Array<T>.sortedArrayDescending(): Array<T> fun ByteArray.sortedArrayDescending(): ByteArray fun ShortArray.sortedArrayDescending(): ShortArray fun IntArray.sortedArrayDescending(): IntArray fun LongArray.sortedArrayDescending(): LongArray fun FloatArray.sortedArrayDescending(): FloatArray fun DoubleArray.sortedArrayDescending(): DoubleArray fun CharArray.sortedArrayDescending(): CharArray القيمة المعادة تعاد مصفوفة جديدة تضم عناصر المصفوفة المعطاة بعد ترتيبها تصاعديًّا. أمثلة استعمال الدالة ()sortedArrayDescending لترتيب عناصر مصفوفة تنازليًّا: import java.util.Arrays fun main(args: Array<String>) { val array = arrayOf(1, 9, -3, 7, 5, 6) ...

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

تعيد الدالة dropWhile()‎ قائمةً تحوي جميع عناصر المصفوفة أو المجموعة التي استُدعيت معها باستثناء العناصر الأولى التي تحقق شرطًا معيَّنًا. البنية العامة inline fun <T> Array<out T>.dropWhile( predicate: (T) -> Boolean ): List<T> inline fun ByteArray.dropWhile( predicate: (Byte) -> Boolean ): List<Byte> inline fun ShortArray.dropWhile( predicate: (Short) -> Boolean ): List<Short> inline fun IntArray.dropWhile( predicate: (Int) -> Boolean ): List<Int> inline fun LongArray.dropWhile( predicate: (Long) -> Boolean ): List<Long> inline ...

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

تجلب الدالة takeLast()‎ آخر n عنصر من المصفوفة أو المجموعة التكرارية التي استُدعيت معها وتضعها في قائمة.  البنية العامة fun <T> Array<out T>.takeLast(n: Int): List<T> fun ByteArray.takeLast(n: Int): List<Byte> fun ShortArray.takeLast(n: Int): List<Short> fun IntArray.takeLast(n: Int): List<Int> fun LongArray.takeLast(n: Int): List<Long> fun FloatArray.takeLast(n: Int): List<Float> fun DoubleArray.takeLast(n: Int): List<Double> fun BooleanArray.takeLast(n: Int): List<Boolean> fun CharArray.takeLast(n: Int): List<Char> fun <T> List<T>.takeLast(n: Int): List<T> المعاملات n عدد صحيح يمثل عدد العناصر الأخيرة المراد جلبها من المصفوفة أو المجموعة التكرارية المعطاة. إن كانت القيمة المعطاة لهذا المعامل أكبر من طول المصفوفة أو المجموعة التكرارية، فستعاد ...

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

تعيد الدالة flatMap()‎ قائمةً تضم ناتج تطبيق الدالة المُمرّرة إليها على عناصر المصفوفة، أو المجموعة، أو الخريطة التي استُدعيت معها. البنية العامة يمكن استدعاء الدالة flatMap()‎ مع المصفوفات: inline fun <T, R> Array<out T>.flatMap( transform: (T) -> Iterable<R> ): List<R> inline fun <R> ByteArray.flatMap( transform: (Byte) -> Iterable<R> ): List<R> inline fun <R> ShortArray.flatMap( transform: (Short) -> Iterable<R> ): List<R> inline fun <R> IntArray.flatMap( transform: (Int) -> Iterable<R> ): List<R> inline fun ...

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

تجمع الدالة foldRight()‎ بشكل تراكمي ناتج تطبيق عملية معيَّنة على قيمة كل عنصر من عناصر المصفوفة أو المجموعة (بدءًا من اليمين إلى اليسار) المستدعاة معها والقيمة التراكمية الحالية بالإضافة إلى القيمة الأولية إن أعطيت.  البنية العامة inline fun <T, R> Array<out T>.foldRight( initial: R, operation: (T, acc: R) -> R ): R inline fun <R> ByteArray.foldRight( initial: R, operation: (Byte, acc: R) -> R ): R inline fun ...

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

تشفِّر الدالة contentHashCode()‎ محتوى المصفوفة التي استُدعيت معها كما لو كانت قائمة إلى شيفرة Hash. البنية العامة inline fun <T> Array<out T>.contentHashCode(): Int inline fun ByteArray.contentHashCode(): Int inline fun ShortArray.contentHashCode(): Int inline fun IntArray.contentHashCode(): Int inline fun LongArray.contentHashCode(): Int inline fun FloatArray.contentHashCode(): Int inline fun DoubleArray.contentHashCode(): Int inline fun BooleanArray.contentHashCode(): Int inline fun CharArray.contentHashCode(): Int الإصدار المطلوب: Kotlin 1.1 وجود الكلمة المفتاحية inline يدل على أنَّ الدالة مباشرة (راجع للمزيد من التفاصيل توثيق الدوال المباشرة). القيم المعادة  تعيد شيفرة Hash لمحتوى المصفوفة التي استُدعيت معها ...

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

ترتِّب الدالة sortBy()‎ عناصر المصفوفة أو القائمة المتغيرة (MutableList) التي استُدعيت معها تصاعديًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر. البنية العامة يمكن استدعاء الدالة sortBy()‎ مع المصفوفات والقوائم المتغيرة: inline fun <T, R : Comparable<R>> Array<out T>.sortBy( crossinline selector: (T) -> R?) inline fun <T, R : Comparable<R>> MutableList<T>.sortBy( crossinline selector: (T) -> R?) وجود الكلمة المفتاحية inline يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة الدوال المباشرة (inline functions)). المعاملات ...

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

تجلب الدالة minWith()‎ العنصر أو الزوج الأول من المصفوفة أو المجموعة أو الخريطة التي استُدعيت معها والذي له أصغر قيمة بحسب الموازن comparator المعطى. البنية العامة يمكن استدعاء الدالة maxWith()‎ مع المصفوفات و المجموعات والخرائط: fun <T> Array<out T>.minWith( comparator: Comparator<in T> ): T? (source) fun ByteArray.minWith(comparator: Comparator<in Byte>): Byte? (source) fun ShortArray.minWith( comparator: Comparator<in Short> ): Short? (source) fun IntArray.minWith(comparator: Comparator<in Int>): Int? (source) fun LongArray.minWith(comparator: Comparator<in Long>): Long? (source) fun FloatArray.minWith( comparator: Comparator<in Float> ): Float? (source) fun ...

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

تجمع الدالة foldRightIndexed()‎ ناتج تطبيق عملية معينة على قيمة كل عنصر من عناصر المصفوفة أو المجموعة (بدءًا من اليمين إلى اليسار) المستدعاة معها وفهرس ذلك العنصر بشكل تراكمي بالإضافة إلى القيمة الأولية إن أعطيت.  البنية العامة يمكن استدعاء الدالة foldRightIndexed()‎ مع المصفوفات: inline fun <T, R> Array<out T>.foldRightIndexed( initial: R, operation: (index: Int, T, acc: R) -> R ): R inline fun <R> ByteArray.foldRightIndexed( initial: R, operation: (index: ...

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

تبدِّل الدالة fill()‎ قيمة جديدة معطاة مكان عناصر محدَّدة في المصفوفة أو القائمة التي تستدعى معها. البنية العامة يمكن استدعاء الدالة fill()‎ مع المصفوفات: fun <T> Array<T>.fill( element: T, fromIndex: Int = 0, toIndex: Int = size) fun ByteArray.fill( element: Byte, fromIndex: Int = 0, toIndex: Int = size) fun ShortArray.fill( element: Short, ...

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

ترشِّح الدالة filterIndexed()‎ عناصر المصفوفة أو المجموعة المعطاة بناءً على فهرس العنصر وقيمته. البنية العامة inline fun <T> Array<out T>.filterIndexed( predicate: (index: Int, T) -> Boolean ): List<T> inline fun ByteArray.filterIndexed( predicate: (index: Int, Byte) -> Boolean ): List<Byte> inline fun ShortArray.filterIndexed( predicate: (index: Int, Short) -> Boolean ): List<Short> inline fun IntArray.filterIndexed( predicate: (index: Int, Int) -> Boolean ): List<Int> inline fun LongArray.filterIndexed( predicate: (index: Int, Long) -> ...

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

ترتِّب الدالة sortedDescending()‎ جميع عناصر المصفوفة أو المجموعة التكرارية التي استُدعيت معها تنازليًّا ثمَّ تضع الناتج في قائمة. البنية العامة fun <T : Comparable<T>> Array<out T>.sortedDescending(): List<T> fun ByteArray.sortedDescending(): List<Byte> fun ShortArray.sortedDescending(): List<Short> fun IntArray.sortedDescending(): List<Int> fun LongArray.sortedDescending(): List<Long> fun FloatArray.sortedDescending(): List<Float> fun DoubleArray.sortedDescending(): List<Double> fun CharArray.sortedDescending(): List<Char> fun <T : Comparable<T>> Iterable<T>.sortedDescending(): List<T> القيمة المعادة تُعاد قائمة تضم عناصر المصفوفة أو المجموعة التكرارية المعطاة بعد ترتيبها تنازليًّا. أمثلة استعمال الدالة ()sortedDescending لترتيب عناصر مصفوف تنازليًّا: fun main(args: Array<String>) { val array = arrayOf(1, ...

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

تعيد الدالة filterNot()‎ قائمةً تحوي عناصر المصفوفة أو المجموعة التي لم تحقق شرطًا منطقيًّا محدَّدًا. إن استدعيت مع خريطة (map)، فستعيد خريطة جديدة تحوي الأزواج التي لم تحقق ذلك الشرط المنطقي. تحافظ هذه الخريطة الجديد على ترتيب تكرار المدخلات (entry iteration order) كما في الخريطة الأصلية. البنية العامة يمكن استدعاء الدالة filterNot()‎ مع المصفوفات أو المجموعات: inline fun <T> Array<out T>.filterNot( predicate: (T) -> Boolean ): List<T> inline fun ByteArray.filterNot( predicate: (Byte) -> Boolean ): List<Byte> ...

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

تعيد الدالة contentToString()‎ سلسلة نصية تمثِّل محتوى المصفوفة التي استُدعيت معها كما لو كانت قائمة. البنية العامة inline fun <T> Array<out T>.contentToString(): String inline fun ByteArray.contentToString(): String inline fun ShortArray.contentToString(): String inline fun IntArray.contentToString(): String inline fun LongArray.contentToString(): String inline fun FloatArray.contentToString(): String inline fun DoubleArray.contentToString(): String inline fun BooleanArray.contentToString(): String inline fun CharArray.contentToString(): String الإصدار المطلوب: Kotlin 1.1 وجود الكلمة المفتاحية inline يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع توثيق الدوال المباشرة). القيم المعادة تُعاد سلسلة نصية تمثِّل محتوى المصفوفة المعطاة ...

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

ترتِّب الدالة sortByDescending()‎ عناصر المصفوفة أو القائمة المتغيرة (MutableList) التي استُدعيت معها تنازليًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر.  البنية العامة يمكن استدعاء الدالة sortByDescending()‎ مع المصفوفات والقوائم المتغيرة: inline fun <T, R : Comparable<R>> Array<out T>.sortBy( crossinline selector: (T) -> R? inline fun <T, R : Comparable<R>> MutableList<T>.sortBy( crossinline selector: (T) -> R?) وجود الكلمة المفتاحية inline يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة الدوال المباشرة (inline functions)). المعاملات ...

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

تُنشئ الدالة groupingBy()‎ موردًا (source) من النوع Grouping من المصفوفة أو المجموعة التي استُدعيت معها لاستخدامه لاحقًا مع عمليات التجميع (group-and-fold operations) وذلك باستخدام الدالة keySelector المُمرّرة إليها لاستخلاص مفتاح من كل عنصر. البنية العامة الإصدار المطلوب: Kotlin 1.1. يمكن استدعاء الدالة groupByTo()‎ مع المصفوفات والمجموعات: inline fun <T, K> Array<out T>.groupingBy( crossinline keySelector: (T) -> K ): Grouping<T, K> inline fun <T, K> Iterable<T>.groupingBy( crossinline keySelector: (T) -> K ): Grouping<T, K> وجود الكلمة المفتاحية inline يدل على أنَّ هذه ...

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

تحول الدالة toSet()‎ المصفوفة أو المجموعة التكرارية التي استُدعيت معها إلى مجموعة من النوع Set. تحافظ المجموعة المُعادة على نفس ترتيب تكرار المصفوفة أو المجموعة التكرارية الأصلية.  البنية العامة يمكن استدعاء الدالة toSet()‎ مع المصفوفات والمجموعات التكرارية: fun <T> Array<out T>.toSet(): Set<T> fun ByteArray.toSet(): Set<Byte> fun ShortArray.toSet(): Set<Short> fun IntArray.toSet(): Set<Int> fun LongArray.toSet(): Set<Long> fun FloatArray.toSet(): Set<Float> fun DoubleArray.toSet(): Set<Double> fun BooleanArray.toSet(): Set<Boolean> fun CharArray.toSet(): Set<Char> fun <T> Iterable<T>.toSet(): Set<T> القيمة المعادة تعاد مجموعة من النوع Set تحوي جميع عناصر المصفوفة أو المجموعة التكرارية المعطاة. أمثلة استعمال الدالة ()toSet لتحويل مصفوفة إلى مجموعة من ...

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

ترتِّب الدالة sortedArray()‎ جميع عناصر المصفوفة التي استُدعيت معها تصاعديًّا ثمَّ تضع الناتج في مصفوفة جديدة.  البنية العامة fun <T : Comparable<T>> Array<T>.sortedArray(): Array<T> fun ByteArray.sortedArray(): ByteArray fun ShortArray.sortedArray(): ShortArray fun IntArray.sortedArray(): IntArray fun LongArray.sortedArray(): LongArray fun FloatArray.sortedArray(): FloatArray fun DoubleArray.sortedArray(): DoubleArray fun CharArray.sortedArray(): CharArray القيمة المعادة تعاد مصفوفة جديدة تضم عناصر المصفوفة المعطاة بعد ترتيبها تصاعديًّا. أمثلة استعمال الدالة ()sortedArray لترتيب عناصر مصفوفة تصاعديًّا: import java.util.Arrays fun main(args: Array<String>) { val array = arrayOf(1, 9, -3, 7, 5, 6) ...

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

تجمع الدالة fold()‎ تراكميًّا ناتج تطبيق عملية معينة على قيمة كل عنصر من عناصر الكائن المستدعى معها والقيمة التراكمية الحالية بالإضافة إلى قيمة أولية إن أعطيت، ويختلف سلوكها بحسب نوع الكائنات المستدعاة معها والمعاملات المُمرّرة إليها (انظر قسم "البنية العامة"). البنية العامة تجمع الدالة fold()‎ بشكل تراكمي ناتج تطبيق عملية معينة على قيمة كل عنصر من عناصر المصفوفة أو المجموعة (من اليسار إلى اليمين) المستدعاة معها والقيمة التراكمية الحالية بالإضافة إلى القيمة الأولية إن أعطيت.  inline fun <T, R> Array<out ...

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

تعكس الدالة reverse()‎ ترتيب عناصر المصفوفة أو القائمة التي استُدعيت معها. البنية العامة يمكن استدعاء الدالة reverse()‎ مع المصفوفات: fun <T> Array<T>.reverse() fun ByteArray.reverse() fun ShortArray.reverse() fun IntArray.reverse() fun LongArray.reverse() fun FloatArray.reverse() fun DoubleArray.reverse() fun BooleanArray.reverse() fun CharArray.reverse() ويمكن استدعاؤها مع القوائم المتغيرة (MutableList): fun <T> MutableList<T>.reverse() أمثلة استعمال الدالة ()reverse لعكس ترتيب عناصر قائمة: fun main(args: Array<String>) { var list = MutableList(6) { it } // [0, 1, 2, 3, 4, 5] list.reverse() print(list) ...

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

تضيف الدالة toCollection()‎ جميع عناصر المصفوفة أو المجموعة التي استُدعيت معها إلى المجموعة المتغيرة (MutableCollection) المُمرّرة إليها. البنية العامة fun <T, C : MutableCollection<in T>> Array<out T>.toCollection( destination: C ): C fun <C : MutableCollection<in Byte>> ByteArray.toCollection( destination: C ): C fun <C : MutableCollection<in Short>> ShortArray.toCollection( destination: C ): C fun <C : MutableCollection<in Int>> IntArray.toCollection( destination: C ): C fun <C : MutableCollection<in Long>> LongArray.toCollection( destination: C ): ...

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

تشبه الدالة mapNotNullTo()‎ الدالة mapNotNull()‎ تمامًا باستثناء أنها تضيف الناتج المعاد إلى المعامل المُمرَّر إليها بدلًا من وضعه في قائمة. البنية العامة يمكن استدعاء الدالة mapNotNullTo()‎ مع المصفوفات والمجموعات والخرائط: inline fun <T, R : Any, C : MutableCollection<in R>> Array<out T>.mapNotNullTo( destination: C, transform: (T) -> R? ): C inline fun <T, R : Any, C : MutableCollection<in R>> Iterable<T>.mapNotNullTo( destination: C, transform: (T) -> R? ): ...

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

تجلب الدالة elementAt()‎ عنصرًا ذي فهرس معيَّن من المصفوفة أو المجموعة التي استُدعيت معها. إن كان فهرس العنصر المعطى خارج حدود المصفوفة أو المجموعة، فستُطلق الدالة الاستثناء IndexOutOfBoundsException. البنية العامة يمكن استدعاء الدالة elementAt()‎ مع المصفوفات: inline fun <T> Array<out T>.elementAt(index: Int): T inline fun ByteArray.elementAt(index: Int): Byte inline fun ShortArray.elementAt(index: Int): Short inline fun IntArray.elementAt(index: Int): Int inline fun LongArray.elementAt(index: Int): Long inline fun FloatArray.elementAt(index: Int): Float inline fun DoubleArray.elementAt(index: Int): Double inline fun BooleanArray.elementAt(index: Int): Boolean inline fun ...

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

تُراكِم الدالة reduce()‎ قيمة عنصر بدءًا من العنصر الأول عبر تطبيق عملية معينة من يسار العناصر المعطاة إلى يمينها على القيمة المتراكمة الحالية وعلى العنصر التالي ثم تُعيد قيمة العنصر النهائي الناتج. البنية العامة inline fun <S, T : S> Array<out T>.reduce( operation: (acc: S, T) -> S ): S inline fun ByteArray.reduce( operation: (acc: Byte, Byte) -> Byte ): Byte inline fun ShortArray.reduce( operation: (acc: Short, Short) -> Short ): Short inline fun IntArray.reduce( ...

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

تجلب الدالة getOrNull()‎ عنصرًا ذا فهرس مُحدَّد من المصفوفة أو المجموعة التي استُدعيت معها أو تعيد القيمة null إن كان الفهرس المعطى يقع خارج حدود المصفوفة أو المجموعة. البنية العامة يمكن استدعاء الدالة getOrElse()‎ مع المصفوفات: fun <T> Array<out T>.getOrNull(index: Int): T? fun ByteArray.getOrNull(index: Int): Byte? fun ShortArray.getOrNull(index: Int): Short? fun IntArray.getOrNull(index: Int): Int? fun LongArray.getOrNull(index: Int): Long? fun FloatArray.getOrNull(index: Int): Float? fun DoubleArray.getOrNull(index: Int): Double? fun BooleanArray.getOrNull(index: Int): Boolean? fun CharArray.getOrNull(index: Int): Char? ويمكن استدعاؤها مع المجموعات أيضًا: fun <T> List<T>.getOrNull(index: ...

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

تجلب الدالة takeLastWhile()‎ آخر عناصر محققة لشرطٍ محدَّدٍ من المصفوفة أو القائمة التي استُدعيت معها. البنية العامة inline fun <T> Array<out T>.takeLastWhile( predicate: (T) -> Boolean ): List<T> inline fun ByteArray.takeLastWhile( predicate: (Byte) -> Boolean ): List<Byte> inline fun ShortArray.takeLastWhile( predicate: (Short) -> Boolean ): List<Short> inline fun IntArray.takeLastWhile( predicate: (Int) -> Boolean ): List<Int> inline fun LongArray.takeLastWhile( predicate: (Long) -> Boolean ): List<Long> inline fun FloatArray.takeLastWhile( predicate: (Float) -> ...

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

ترتِّب الدالة sorted()‎ جميع عناصر المصفوفة أو المجموعة التكرارية التي استُدعيت معها تصاعديًّا ثمَّ تضع الناتج في قائمة. البنية العامة fun <T : Comparable<T>> Array<out T>.sorted(): List<T> fun ByteArray.sorted(): List<Byte> fun ShortArray.sorted(): List<Short> fun IntArray.sorted(): List<Int> fun LongArray.sorted(): List<Long> fun FloatArray.sorted(): List<Float> fun DoubleArray.sorted(): List<Double> fun CharArray.sorted(): List<Char> fun <T : Comparable<T>> Iterable<T>.sorted(): List<T> القيمة المعادة تُعاد قائمة تضم عناصر المصفوفة أو المجموعة التكرارية المعطاة بعد ترتيبها تصاعديًّا. أمثلة استعمال الدالة ()sorted لترتيب عناصر مصفوفة تصاعديًّا: fun main(args: Array<String>) { val array = ...

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

تجلب الدالة indexOfFirst()‎ فهرس أول عنصر يحقِّق شرطًا معيَّنًا من المصفوفة أو المجموعة أو القائمة التي استُدعيت معها. البنية العامة يمكن استدعاء الدالة indexOfFirst()‎ مع المصفوفات والمجموعات والقوائم: inline fun <T> Array<out T>.indexOfFirst( predicate: (T) -> Boolean ): Int inline fun ByteArray.indexOfFirst( predicate: (Byte) -> Boolean ): Int inline fun ShortArray.indexOfFirst( predicate: (Short) -> Boolean ): Int inline fun IntArray.indexOfFirst( predicate: (Int) -> Boolean ): Int inline fun LongArray.indexOfFirst( ...

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

تجلب الدالة min()‎ أصغر عنصر في المصفوفة أو المجموعة التي استُدعيت معها. البنية العامة fun Array<out Double>.min(): Double? fun Array<out Float>.min(): Float? fun FloatArray.min(): Float? fun DoubleArray.min(): Double? fun Iterable<Double>.min(): Double? fun Iterable<Float>.min(): Float? fun <T : Comparable<T>> Array<out T>.min(): T? fun ByteArray.min(): Byte? fun ShortArray.min(): Short? fun IntArray.min(): Int? fun LongArray.min(): Long? fun CharArray.min(): Char? fun <T : Comparable<T>> Iterable<T>.min(): T? الإصدار المطلوب: Kotlin 1.1. القيم المعادة يُعاد أصغر عنصر في المصفوفة أو المجموعة المعطاة، أو القيمة null إن كانت تلك المصفوفة أو ...

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

تعيد الدالة distinctBy()‎ قائمة تحتوي على العناصر الموجودة في المصفوفة أو المجموعة التي استُدعيت معها والتي تعطي نتيجة مختلفة عند تطبيق الدالة selector عليها فقط. تُرتَّب العناصر في القائمة الناتجة بنفس ترتيبها في المصفوفة أو المجموعة الأصليَّة. البنية العامة تستدعى الدالة distinctBy()‎ مع مصفوفة: inline fun <T, K> Array<out T>.distinctBy( selector: (T) -> K ): List<T> inline fun <K> ByteArray.distinctBy( selector: (Byte) -> K ): List<Byte> inline fun <K> ShortArray.distinctBy( selector: (Short) -> ...

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

تعيد الدالة reversedArray()‎ مصفوفةً تضم عناصر المصفوفة التي استُدعيت معها بترتيب معكوس. البنية العامة fun <T> Array<T>.reversedArray(): Array<T> fun ByteArray.reversedArray(): ByteArray fun ShortArray.reversedArray(): ShortArray fun IntArray.reversedArray(): IntArray fun LongArray.reversedArray(): LongArray fun FloatArray.reversedArray(): FloatArray fun DoubleArray.reversedArray(): DoubleArray fun BooleanArray.reversedArray(): BooleanArray fun CharArray.reversedArray(): CharArray القيم المعادة تُعاد مصفوفة تضم عناصر المصفوفة المعطاة بترتيب معكوس. أمثلة استعمال الدالة ()reversedArray لعكس ترتيب عناصر مصفوفة: import java.util.Arrays fun main(args: Array<String>) { var array = arrayOf(0, 1, 2, 3, 4, 5) print(Arrays.toString(array.reversedArray())) // [5, ...

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

تجلب الدالة lastOrNull()‎ آخر عنصر من عناصر المصفوفة أو المجموعة التي استُدعيت معها إن لم يُمرَّر إليها أي شيء، أو آخر عنصر يحقق شرطًا معيَّنًا في حال تمرير دالة منطقية إليها. تشبه هذه الدالةُ الدالةَ first()‎ تمامًا باستثناء أنها تعيد القيمة null بدلًا من رمي استثناءٍ إن كانت المصفوفة أو المجموعة التي استُدعيت الدالة last()‎ معها فارغة أو لم يكن هناك أي عنصر يحقق الدالة المنطقية الممرَّرة إليها. البنية العامة يمكن استدعاء الدالة lastOrNull()‎ مع المصفوفات بدون تمرير أية معاملات: fun <T> Array<out T>.lastOrNull(): T? fun ByteArray.lastOrNull(): Byte? fun ShortArray.lastOrNull(): Short? fun IntArray.lastOrNull(): Int? ...

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

تبحث الدالة intersect()‎ عن العناصر المشتركة بين مصفوفتين أو مجموعتين ثمَّ تعيدها في مجموعة. تحافظ المجموعة المُعادة على ترتيب تكرار المصفوفة أو المجموعة الأصلية. البنية العامة يمكن استدعاء الدالة intersect()‎ مع المصفوفات والمجموعات: infix fun <T> Array<out T>.intersect( other: Iterable<T> ): Set<T> infix fun ByteArray.intersect( other: Iterable<Byte> ): Set<Byte> infix fun ShortArray.intersect( other: Iterable<Short> ): Set<Short> infix fun IntArray.intersect(other: Iterable<Int>): Set<Int> (source) infix fun LongArray.intersect( other: Iterable<Long> ): Set<Long> infix fun FloatArray.intersect( ...

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

تجلب الدالة firstOrNull()‎ أول عنصر من عناصر المصفوفة أو المجموعة التي استُدعيت معها إن لم يُمرَّر إليها أي شيء، أو أول عنصر يحقق شرطًا معيَّنًا في حال تمرير دالة منطقية إليها. إن كانت المصفوفة أو المجموعة التي استُدعيت الدالة first()‎ معها فارغة أو لم يكن هناك أي عنصر يحقق الدالة المنطقية الممرَّرة إليها، فستعيد الدالة القيمة null. البنية العامة يمكن استدعاء الدالة firstOrNull()‎ بدون تمرير أية معاملات: fun <T> Array<out T>.firstOrNull(): T? fun ByteArray.firstOrNull(): Byte? fun ShortArray.firstOrNull(): Short? fun IntArray.firstOrNull(): ...

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

تشبه الدالة mapIndexedNotNullTo()‎ الدالة mapIndexedNotNull()‎ تمامًا باستثناء أنها تضيف الناتج المعاد إلى المعامل الممرَّر إليها. البنية العامة يمكن استدعاء الدالة mapIndexedNotNullTo()‎ مع المصفوفات والمجموعات: inline fun <T, R : Any, C : MutableCollection<in R>> Array<out T>.mapIndexedNotNullTo( destination: C, transform: (index: Int, T) -> R? ): C inline fun <T, R : Any, C : MutableCollection<in R>> Iterable<T>.mapIndexedNotNullTo( destination: C, transform: (index: Int, T) -> R? ): C وجود الكلمة المفتاحية inline يدل ...

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

تنسخ الدالة copyOfRange()‎ مجالًا محدَّدًا من المصفوفة التي استُدعيت معها. البنية العامة 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: ...

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

تعيد الدالة toHashSet()‎ كائنًا من النوع HashSet لجميع عناصر المصفوفة أو المجموعة التي استُدعيت معها. البنية العامة fun <T> Array<out T>.toHashSet(): HashSet<T> fun ByteArray.toHashSet(): HashSet<Byte> fun ShortArray.toHashSet(): HashSet<Short> fun IntArray.toHashSet(): HashSet<Int> fun LongArray.toHashSet(): HashSet<Long> fun FloatArray.toHashSet(): HashSet<Float> fun DoubleArray.toHashSet(): HashSet<Double> fun BooleanArray.toHashSet(): HashSet<Boolean> fun CharArray.toHashSet(): HashSet<Char> fun <T> Iterable<T>.toHashSet(): HashSet<T> القيمة المعادة يعاد كائن من النوع HashSet لجميع عناصر المصفوفة أو المجموعة المعطاة. أمثلة استعمال الدالة ()toHashSet مع مصفوفة مؤلفة من ستة عناصر: import java.util.Arrays fun main(args: Array<String>) { ...

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

تجلب الدالة last()‎ آخر عنصر من عناصر المصفوفة أو المجموعة التي استُدعيت معها إن لم يمرر إليها أي شيء، أو آخر عنصر يحق شرطًا معيَّنًا في حال تمرير دالة منطقية إليها. إن كانت المصفوفة أو المجموعة التي استُدعيت الدالة first()‎ عبرها فارغة أو لم يكن هناك أي عنصر يحقق الدالة المنطقية الممرَّرة إليها، فستُطلِق الدالة الاستثناءNoSuchElementException. البنية العامة يمكن استدعاء الدالة last()‎ مع المصفوفات بدون تمرير أية معاملات: fun <T> Array<out T>.last(): T fun ByteArray.last(): Byte fun ShortArray.last(): Short fun IntArray.last(): Int fun LongArray.last(): Long fun FloatArray.last(): Float fun DoubleArray.last(): Double fun BooleanArray.last(): Boolean ...

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

تبحث الدالة find()‎ على عنصر محدَّد ضمن عناصر المصفوفة أو المجموعة التي استُدعيت معها ثمَّ تعيد أول ظهور له. البنية العامة inline fun <T> Array<out T>.find( predicate: (T) -> Boolean ): T? inline fun ByteArray.find( predicate: (Byte) -> Boolean ): Byte? inline fun ShortArray.find( predicate: (Short) -> Boolean ): Short? inline fun IntArray.find(predicate: (Int) -> Boolean): Int? (source) inline fun LongArray.find( predicate: (Long) -> Boolean ): Long? inline fun FloatArray.find( ...

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

تجلب الدالة take()‎ أول n عنصر من المصفوفة أو المجموعة التكرارية التي استُدعيت معها وتضعها في قائمة. البنية العامة fun <T> Array<out T>.take(n: Int): List<T> fun ByteArray.take(n: Int): List<Byte> fun ShortArray.take(n: Int): List<Short> fun IntArray.take(n: Int): List<Int> fun LongArray.take(n: Int): List<Long> fun FloatArray.take(n: Int): List<Float> fun DoubleArray.take(n: Int): List<Double> fun BooleanArray.take(n: Int): List<Boolean> fun CharArray.take(n: Int): List<Char> fun <T> Iterable<T>.take(n: Int): List<T> المعاملات n عدد صحيح يمثل عدد العناصر الأولى المراد جلبها من المصفوفة أو المجموعة التكرارية المعطاة. إن كانت القيمة المعطاة لهذا المعامل ...

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

تشبه الدالة flatMapTo()‎ الدالة flatMap()‎ تمامًا باستثناء أنها تضيف الناتج المعاد إلى كائن موجود مسبقًا بدلًا من إعادته فقط. البنية العامة يمكن استدعاء الدالة flatMapTo()‎ مع المصفوفات: inline fun <T, R, C : MutableCollection<in R>> Array<out T>.flatMapTo( destination: C, transform: (T) -> Iterable<R> ): C inline fun <R, C : MutableCollection<in R>> ByteArray.flatMapTo( destination: C, transform: (Byte) -> Iterable<R> ): C inline fun <R, C : MutableCollection<in R>> ShortArray.flatMapTo( ...

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

تعيد الدالة mapIndexedNotNull()‎ قائمةً تحوي ناتج تطبيق الدالة المُمرّرة إليها على فهرس وقيمة كل عنصر من عناصر المصفوفة أو المجموعة التي استُدعيت معها باستثناء القيم العدميَّة null التي تعيدها تلك الدالة. البنية العامة يمكن استدعاء الدالةmapIndexedNotNull()‎ مع المصفوفات والمجموعات: inline fun <T, R : Any> Array<out T>.mapIndexedNotNull( transform: (index: Int, T) -> R? ): List<R> inline fun <T, R : Any> Iterable<T>.mapIndexedNotNull( transform: (index: Int, T) -> R? ): List<R> وجود الكلمة المفتاحية inline يدل على أنَّ هذه الدالة مباشرة ...

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

تشبه الدالة filterNotTo()‎ الدالة filterNot()‎ في جميع النواحي باستثناء أنَّها تضيف الناتج المعاد إلى المعامل الممرَّر إليها. الجدير بالذكر أنّه ينبغي أن يكون ذلك المعامل المعطى مجموعةً قابلةً للتغيير (MutableCollection) إن استدعيت الدالة مع مصفوفة أو مجموعة، أو خريطةً قابلة للتغيير (MutableMap) إن استدعيت الدالة مع خريطة. البنية العامة يمكن استدعاء الدالة filterNotTo()‎ مع المصفوفات أو المجموعات: inline fun <T, C : MutableCollection<in T>> Array<out T>.filterNotTo( destination: C, predicate: (T) -> Boolean ): C inline ...

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

تعيد الدالة withIndex()‎ مجموعة تكرارية خاملة (lazy Iterable) من القيم المُفهرسة لكل عنصر من عناصر المصفوفة أو المجموعة التكرارية التي استُدعيت معها، أو تعيد مُكرّرًا (iterator) يغلّف كل عنصر أنتجه المكرّر (Iterator) المستدعى مع الدالة مع القيمة المُفهرسة أي يعيد القيمة مع فهرسها. البنية العامة يمكن استدعاء الدالة withIndex()‎ مع المصفوفات أو المجموعات التكرارية أو المكرِّرات: fun <T> Array<out T>.withIndex(): Iterable<IndexedValue<T>> fun ByteArray.withIndex(): Iterable<IndexedValue<Byte>> fun ShortArray.withIndex(): Iterable<IndexedValue<Short>> fun IntArray.withIndex(): Iterable<IndexedValue<Int>> fun LongArray.withIndex(): Iterable<IndexedValue<Long>> fun FloatArray.withIndex(): Iterable<IndexedValue<Float>> fun DoubleArray.withIndex(): Iterable<IndexedValue<Double>> fun BooleanArray.withIndex(): Iterable<IndexedValue<Boolean>> fun ...

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

تُعيد الدالة reversed()‎ قائمة تضم عناصر المصفوفة أو المجموعة التي استُدعيت معها بترتيب معكوس. البنية العامة fun <T> Array<out T>.reversed(): List<T> fun ByteArray.reversed(): List<Byte> fun ShortArray.reversed(): List<Short> fun IntArray.reversed(): List<Int> fun LongArray.reversed(): List<Long> fun FloatArray.reversed(): List<Float> fun DoubleArray.reversed(): List<Double> fun BooleanArray.reversed(): List<Boolean> fun CharArray.reversed(): List<Char> fun <T> Iterable<T>.reversed(): List<T> القيم المعادة تعاد قائمة تضم عناصر المصفوفة أو المجموعة المعطاة بترتيب معكوس. أمثلة استعمال الدالة ()reversed لعكس ترتيب عناصر قائمة: fun main(args: Array<String>) { var list = listOf(1, 2, 3, ...

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

تحول الدالة toList()‎ المصفوفة أو المجموعة التكرارية أو الخريطة التي استُدعيت معها إلى قائمة. البنية العامة يمكن استدعاء الدالة toList()‎ مع المصفوفات أو المجموعات التكرارية أو الخرائط: fun <T> Array<out T>.toList(): List<T> fun ByteArray.toList(): List<Byte> fun ShortArray.toList(): List<Short> fun IntArray.toList(): List<Int> fun LongArray.toList(): List<Long> fun FloatArray.toList(): List<Float> fun DoubleArray.toList(): List<Double> fun BooleanArray.toList(): List<Boolean> fun CharArray.toList(): List<Char> fun <T> Iterable<T>.toList(): List<T> fun <K, V> Map<out K, V>.toList(): List<Pair<K, V>> القيمة المعادة تعاد قائمة تحوي جميع عناصر المصفوفة أو المجموعة التكرارية أو جميع أزواج ...

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

تعيد الدالة drop()‎ قائمة تحوي جميع عناصر المصفوفة أو المجموعة التي استُدعيت معها باستثناء أول n عنصر. البنية العامة fun <T> Array<out T>.drop(n: Int): List<T> fun ByteArray.drop(n: Int): List<Byte> fun ShortArray.drop(n: Int): List<Short> fun IntArray.drop(n: Int): List<Int> fun LongArray.drop(n: Int): List<Long> fun FloatArray.drop(n: Int): List<Float> fun DoubleArray.drop(n: Int): List<Double> fun BooleanArray.drop(n: Int): List<Boolean> fun CharArray.drop(n: Int): List<Char> fun <T> Iterable<T>.drop(n: Int): List<T> المعاملات n عدد صحيح يمثل عدد العناصر المراد حذفها من بداية المصفوفة أو المجموعة المعطاة. القيم المعادة تُعاد قائمة ...

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

تجلب الدالة max()‎ أكبر عنصر في المصفوفة أو المجموعة التي استُدعيت معها. البنية العامة fun Array<out Double>.max(): Double? fun Array<out Float>.max(): Float? fun FloatArray.max(): Float? fun DoubleArray.max(): Double? fun Iterable<Double>.max(): Double? fun Iterable<Float>.max(): Float? fun <T : Comparable<T>> Array<out T>.max(): T? fun ByteArray.max(): Byte? fun ShortArray.max(): Short? fun IntArray.max(): Int? fun LongArray.max(): Long? fun CharArray.max(): Char? fun <T : Comparable<T>> Iterable<T>.max(): T? الإصدار المطلوب: Kotlin 1.1. القيم المعادة يُعاد أكبر عنصر في المصفوفة أو المجموعة المعطاة، أو القيمة null إن كانت تلك المصفوفة أو ...

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

تشِّفر الدالة contentDeepHashCode()‎ محتوى المصفوفة التي استُدعيت معها كما لو كانت قائمة إلى شيفرة Hash. تعامل المصفوفات المُتشعبة مثل القوائم أيضًا. إن حَوَت المصفوفة نفسها في أي مستوى من المستويات المتشعبة، فسيكون سلوك الدالة غير محدَّد. البنية العامة inline fun <T> Array<out T>.contentDeepHashCode(): Int الإصدار المطلوب: Kotlin 1.1 وجود الكلمة المفتاحية inline يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع توثيق الدوال المباشرة). القيم المعادة  شيفرة Hash لمحتوى المصفوفة المعطاة كما لو كانت قائمة. أمثلة استخدام الدالة ()contentDeepHashCode مع المصفوفات المتشعبة ...

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

تعيد الدالة requireNoNulls()‎ العناصر غير المعدومة (non-null) من المصفوفة أو المجموعة أو القائمة التي استُدعيت معها أو ترمي استثناءً إن وجد عنصر معدوم (null). البنية العامة fun <T : Any> Array<T?>.requireNoNulls(): Array<T> fun <T : Any> Iterable<T?>.requireNoNulls(): Iterable<T> fun <T : Any> List<T?>.requireNoNulls(): List<T> القيم المعادة تعاد المصفوفة أو المجموعة أو القائمة المعطاة نفسها إن لم يكن فيها أي عنصر معدوم أو يرمى الاستثناء IllegalArgumentException إن وجد أي عنصر معدوم. أمثلة استعمال الدالة ()requireNoNulls مع قائمة لا تحتوي على أي عنصر معدوم: fun ...

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

تعيد الدالة contentDeepToString()‎ سلسلة نصية تمثِّل محتوى المصفوفة التي استُدعيت معها كما لو كانت قائمة. تعامل المصفوفات المُتشعبة مثل معاملة القوائم أيضًا. إن حَوَت المصفوفة نفسها في أي مستوى من المستويات المتشعبة، فسيعاد ذلك المرجع (reference) بالشكل "[...]" لمنع العَودية (recursion). البنية العامة inline fun <T> Array<out T>.contentDeepToString(): String الإصدار المطلوب: Kotlin 1.1 وجود الكلمة المفتاحية inline يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع توثيق الدوال المباشرة). القيم المعادة تُعاد سلسلة نصية تمثل محتوى المصفوفة كما لو كانت قائمة. أمثلة تعرف ...

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

تجمع الدالة union()‎ العناصر المشتركة وغير المتشركة بين المصفوفة أو المجموعة التكرارية التي استُدعيت معها وبين المجموعة التكرارية المُمرّرة إليها في مجموعةٍ واحدةٍ من النوع Set بعد حذف العناصر المتكررة. تحافظ المجموعة المُعادة على نفس ترتيب تكرار المصفوفة أو المجموعة التكرارية الأصلية. تضاف عناصر المجموعة التكرارية الممرَّرة إلى الدالة وغير المتكررة في النهاية. البنية العامة يمكن استدعاء الدالةunion()‎ مع المصفوفات والمجموعات التكرارية: infix fun <T> Array<out T>.union(other: Iterable<T>): Set<T> infix fun ByteArray.union(other: Iterable<Byte>): Set<Byte> infix fun ShortArray.union( ...

التعابير الاصطلاحية (Idioms) في لغة Kotlin

تعرِض هذه الصفحة عددًا من التعابير الاصطلاحيّة المستخدَمة بكثرةٍ في لغة Kotlin، ولأيّ اصطلاحٍ جديدٍ لم يُذكَر فيمكنك تعديل هذه الصفحة لإضافته. إنشاء كائنات نقل البيانات DTO:‏ Data Transfer Objects (الكائنات POJO/POCO) ليكن الصنف (class) الآتي باسم Customer: data class Customer(val name: String, val email: String) وله التوابع الوظيفيّة (functional methods) الآتية: توابع getter (وتوابع setter في حالة المتحولات من النوع var) لكافة الخاصّيّات (properties) equals()‎ hashCode()‎ toString()‎ copy()‎ component1()‎ و component2()‎ ...إلخ. وذلك لكافة الخاصّيّات (properties) في الصنف (راجع أصناف البيانات ...

أمان القيم الفارغة (Null) في لغة Kotlin

الأنواع Nullable والأنواع Non-Null يهدف نظام الأنواع في Kotlin إلى الحدِّ من أخطار القيمة الفارغة null في الشيفرات، إذ إنّ أحد الأخطاء الأكثر شيوعًا في لغات البرمجة -بما فيها لغة Java- هو أنّ محاولة الوصول إلى مرجعيّةٍ تحتوي على القيمة null سيؤدي إلى حدوث استثناءٍ مرجعيّ (reference exception)، ويُدعى هذا الاستثناء في لغة Java باسم NullPointerException أو NPE اختصارًا، أمّا Kotlin فهي تحدُّ من هذا الاستثناء ليقتصر على الحالات الآتية: استدعاءٌ صريحٌ بالشكل: throw NullPointerException()‎ استخدام المعامل !! (كما سيُشرح لاحقًا) ...

الدوال من المرتبة الأعلى (Higher-Order Functions) و Lambdas

الدوال من المرتبة الأعلى (Higher-Order Functions) وهي الدوال التي تقبل دوالًا أخرى كمعاملاتٍ (parameters) لها، أو تلك التي تُعيد (return) دوالًا أخرى كنتيجة لها، وكمثالٍ عنها لنأخذ الدالة lock()‎، وهي الدالة التي تقبل كائنًا lock ودالةً أخرى، حيث ستحصلُ الدالة على الكائن lock وتُنفِّذُ الدالةَ الوسيطةَ ثم تُحرِّر القفل في النهاية، كما في الشيفرة: fun <T> lock(lock: Lock, body: () -> T): T { lock.lock() try { ...

بنية البرمجة في لغة Kotlin

تعريف الحزم (Package) يُكتب توصيف الحزمة (package) في بداية الملف المصدريّ (source file) بالشكل الآتي: package my.demo import java.util.* // ... ولا يُشترط التوافق ما بين الحزمة (package) والمجلد الذي توجد فيه (directory)، إذ من الممكن أن تتوضع الملفات المصدريّة عشوائيًّا في نظام الملفات. المزيد عن الحزم (packages). تعريف الدوال (Function) إن كانت الدالة بمتحولين من نوع Int وتعيد قيمةً بنوع Int أيضًا، فسيصبح تعريفها بالشكل: fun sum(a: Int, b: Int): Int {   return a + b } أما الشيفرة الآتية فهي لتعريف دالةٍ باسم sum ...

الكلمات المفتاحية (Keywords) والمعاملات (Operators) في لغة Kotlin

 الكلمات المفتاحيّة الثابتة (Hard Keywords) تُعدُّ الكلمات الآتية كلماتٍ مفتاحيّةً في لغة Kotlin وليس ممكنًا استخدامها كمُعرِّفات (identifiers): as تُستخدَم في التحويلات ما بين الأنواع (typecasts) تُحدِّد تسميةً بديلةً (alias) عند عملية الاستيراد (import) as?‎ للتحويلات الحافظة للنوع (safe type casts) break لإنهاء تنفيذ الحلقات (loops) class للتصريح عن الأصناف continue  للاستمرار بالخطوة التالية لأقرب حلقة محيطة (enclosing) do للبدء بحلقة do/while (والتي يُختبَر الشرط فيها لاحقًا) else لتعريف فرعٍ (branch) من تعبير الشرط if والذي سيُنفَّذ عندما يكون الشرط بالقيمة false false ...

التصريح عن الكائنات (Object Declarations) وتعابيرها (Expressions) في لغة Kotlin

قد تحتاج في بعض الأحيان لإنشاء كائنٍ بإجراء تعديلاتٍ طفيفةٍ على أحد الأصناف (classes) بدون التصريح عن صنفٍ فرعيٍّ (subclass) له؛ تعالج لغة Java مثل هذه الحالات بالاعتماد على الأصناف الداخليّة المجهولة (anonymous inner classes)، وتُعمِّمها لغة Kotlin من خلال طرح مفهوم التصريح عن الكائنات وتعابيرها. تعابير الكائنات (Object Expressions) لإنشاء كائنٍ من صنفٍ مجهولٍ (anonymous) يرِث من نوعٍ أو أكثر تكون الشيفرة بالشكل: window.addMouseListener(object : MouseAdapter() { override fun mouseClicked(e: MouseEvent) { ...

الوحدة collections.abc‎ في بايثون

تقدّم هذه الوحدة مجموعة من الأصناف الأساسية المجرّدة abstract base calsses (يرمز لها ABC اختصارًا) والتي يمكن استخدامها للتأكد ممّا إذا كان صنف معيّن يقدّم واجهة interface معينة، كأن يكون الصنف قابلًا للتقطيع hashable أو أنّه صنف ربط mapping. ملاحظة: قبل الإصدار 3.3 من اللغة كانت هذه الوحدة جزءًا من وحدة collections. الأصناف الأساسية المجرّدة في الوحدة collections تقدّم وحدة collections الأصناف الأساسية المجرّدة التالية: الصنف الأساسي المجرد يرث من التوابع المجرّدة توابع mixin Container   __contains__   Hashable   ...

التابع Enumerable.map في روبي

يعيد التابع map مصفوفة جديدة تحوي النتائج المقابلة لكل عنصر من عناصر الكائن القابل للتعداد المعادة من الكتلة المعطاة بعد تمريره إليها. إن لم تُعطَ أية كتلة، فسيعيد التابع كائنًا من النوع Enumerator. البنية العامة map { |obj| block } → array map → an_enumerator القيمة المعادة تعاد مصفوفة جديدة تحوي النتائج المقابلة لكل عنصر من عناصر الكائن القابل للتعداد المعادة من الكتلة block بعد تمريره إليها. إن لم تُعطَ أية كتلة، فسيعاد كائن من النوع Enumerator. أمثلة مثال على استعمال التابع map: ...

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

تشبه هذه الدالة filterTo()‎ الدالة filter()‎ في جميع النواحي باستثناء أنها تضيف الناتج إلى المعامل المُمرَّر إليها. الجدير بالذكر أنّه ينبغي أن يكون ذلك المعامل المعطى مجموعةً قابلةً للتغيير (MutableCollection) إن استدعيت الدالة مع مصفوفة أو مجموعة، أو خريطةً قابلة للتغيير (MutableMap) إن استدعيت الدالة مع خريطة. البنية العامة يمكن استدعاء الدالة filterTo()‎ مع المصفوفات أو المجموعات: inline fun <T, C : MutableCollection<in T>> Array<out T>.filterTo( destination: C, predicate: (T) -> Boolean ): C inline ...

الصنف ‎‎CharSequence‎ في Kotlin

تمثل الواجهة CharSequence سلسلةً من المحارف قابلةً للقراءة. interface CharSequence الخاصيات length تمثل الخاصية CharSequence.length عدد عناصر سلسلة المحارف (CharSequence) المستدعاة معها. الدوال get تجلب الدالة get()‎‎ المحرف ذا الفهرس الممرَّر إليها من سلسلة المحارف المستدعاة معها. subSequence تجلب الدالة subSequence()‎‎ جزءًا محددًا يقع في سلسلة المحارف التي استٌدعيت معها. الدوال الموروثة (Inherited Functions) equals تتحقق الدالة equals()‎ إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعيت معه.  hashCode تعيد الدالة hashCode()‎ الشيفرة Hash الخاصّة بالكائن الذي استُدعي معها. toString تحول الدالة toString()‎ الكائن الذي يُستدعى معه إلى سلسلة نصية (String). الخاصيات الإضافية (Extension Properties) ...

الصنف ‎‎CharSequence‎ في Kotlin

تمثل الواجهة CharSequence سلسلةً من المحارف قابلةً للقراءة. interface CharSequence الخاصيات length تمثل الخاصية CharSequence.length عدد عناصر سلسلة المحارف (CharSequence) المستدعاة معها. الدوال get تجلب الدالة get()‎‎ المحرف ذا الفهرس الممرَّر إليها من سلسلة المحارف المستدعاة معها. subSequence تجلب الدالة subSequence()‎‎ جزءًا محددًا يقع في سلسلة المحارف التي استٌدعيت معها. الدوال الموروثة (Inherited Functions) equals تتحقق الدالة equals()‎ إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعيت معه.  hashCode تعيد الدالة hashCode()‎ الشيفرة Hash الخاصّة بالكائن الذي استُدعي معها. toString تحول الدالة toString()‎ الكائن الذي يُستدعى معه إلى سلسلة نصية (String). الخاصيات الإضافية (Extension Properties) ...

الموارد في رابط الكائنات بالعلاقات Eloquent

مقدمة عند بناء واجهات برمجة التطبيقات (المدعوة اختصاراً APIs)، قد تحتاج إلى طبقة تحويل تقع بين نماذج Eloquent وردود JSON المعادة فعليًّا إلى مستخدمي تطبيقك. تمكّنك الموارد في Laravel من تحويل النماذج بشكل فعال وسهل، بما يتضمن مجموعات النماذج. توليد الموارد لتوليد صنف مورد، يمكنك استخدام أمر artisan make:resource. افتراضيًّا، تقع الموارد في المجلد app/Http/Resources الخاص بتطبيقك. ترث الموارد من الصنف الأساسي Illuminate\Http\Resources\Json\JsonResource: php artisan make:resource User موارد المجموعات إضافةً إلى توليد موارد لتحويل النماذج الأحادية، يمكنك توليد موارد مسؤولة ...

Array.prototype.indexOf()‎

الدالة Array.prototype.indexOf()‎ تعيد أوّل فهرس للعنصر الموجود في الدالة والذي يساوي القيمة المُحدَّدة، أو القيمة -1 إن لم يُعثَر على مُطابَقة. var a = [2, 9, 9]; a.indexOf(2); // 0 a.indexOf(7); // -1 if (a.indexOf(7) === -1) { // العنصر غير موجود في المصفوفة } البنية العامة arr.indexOf(searchElement[, fromIndex]) searchElement العنصر الذي نريد البحث عنه. fromIndex الفهرس الذي نريد البدء منه في البحث عن searchElement، والقيم السالبة ستؤدي إلى بدء البحث من الفهرس array.length + fromIndex تصاعديًا. القيمة الافتراضية هي 0. ...

التابع Array.map في روبي

يستدعي التابع map كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة ثمَّ يضع الناتج الذي تعيده هذه الكتلة لكل عنصر في مصفوفة جديدة وتعيدها. إن لم تمرَّر أية كتلة إلى التابع map، فسيعيد كائنًا من النوع Enumerator. البنية العامة map { |item| block } → new_ary map → Enumerator القيم المعادة تعاد مصفوفة جديدة تحوي ناتج تطبيق الكتلة block على كل عنصر من عناصر المصفوفة المعطاة، أو يعاد كائنٌ من النوع Enumerator إن لم تعطَ الكتلة block. أمثلة أمثلة ...

عرض (100 السابقة | 100 التالية) (20 | 50 | 100 | 250 | 500).