الفرق بين المراجعتين لصفحة: «Kotlin/collections/singleOrNull»
جميل-بيلوني (نقاش | مساهمات) ط مراجعة وتدقيق. |
جميل-بيلوني (نقاش | مساهمات) طلا ملخص تعديل |
||
(مراجعتان متوسطتان بواسطة مستخدم واحد آخر غير معروضتين) | |||
سطر 50: | سطر 50: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== المعاملات == | |||
=== <code>predicate</code> === | |||
دالة تطبق على كل عنصر من عناصر المصفوفة أو المجموعة أو القائمة المعطاة، إذ يمرر إليها العنصر ثم تعيد القيمة المنطقية المقابلة له. | |||
==القيم المعادة== | ==القيم المعادة== | ||
يعاد العنصر الوحيد الموجود في [[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو [[Kotlin/List|القائمة]] المعطاة، أو العنصر الوحيد الذي حقَّق الشرط <code>predicate</code> (إن أعطي)، أو القيمة <code>null</code> خلاف ذلك. | يعاد العنصر الوحيد الموجود في [[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو [[Kotlin/List|القائمة]] المعطاة، أو العنصر الوحيد الذي حقَّق الشرط <code>predicate</code> (إن أعطي)، أو القيمة <code>null</code> خلاف ذلك. | ||
سطر 69: | سطر 75: | ||
==انظر أيضًا== | ==انظر أيضًا== | ||
*الدالة <code>[[Kotlin/collections/single|single()]]</code>: تتحقَّق من حواية [[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو [[Kotlin/List|القائمة]] التي استُدعيت معها عنصرًا واحدًا فقط أو عنصرًا واحدًا محققًا لشرط معيَّن ثمَّ تعيده أو تطلق [[Kotlin/exceptions|استثناءً]] خلاف ذلك. | *الدالة <code>[[Kotlin/collections/single|single()]]</code>: تتحقَّق من حواية [[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو [[Kotlin/List|القائمة]] التي استُدعيت معها عنصرًا واحدًا فقط أو عنصرًا واحدًا محققًا لشرط معيَّن ثمَّ تعيده أو تطلق [[Kotlin/exceptions|استثناءً]] خلاف ذلك. | ||
* الدالة <code>[[Kotlin/collections/slice|slice()]]</code> | * الدالة <code>[[Kotlin/collections/slice|slice()]]</code>: تقطع جزءًا محدَّدًا من <nowiki/>[[Kotlin/Array|المصفوفة]] أو القائمة التي استُدعيت معها ثمَّ تعيده في قائمة. | ||
==مصادر== | ==مصادر== | ||
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/single-or-null.html صفحة الدالة singleOrNull() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | *[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/single-or-null.html صفحة الدالة singleOrNull() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin | [[تصنيف:Kotlin Function]] | ||
[[تصنيف:Kotlin Collection]] |
المراجعة الحالية بتاريخ 10:14، 8 سبتمبر 2018
تتحقَّق الدالة singleOrNull()
من حواية المصفوفة أو المجموعة أو القائمة التي استُدعيت معها عنصرًا واحدًا فقط، أو عنصرًا واحدًا محققًا لشرط معيَّن ثمَّ تعيده، أو تعيد القيمة null
خلاف ذلك.
البنية العامة
إن استدعيت الدالة singleOrNull()
مع مصفوفة أو مجموعة أو قائمة دون تمرير أي معامل، فستتحقَّق من احتواء تلك المصفوفة أو المجموعة أو القائمة على عنصر واحد فقط ثمَّ تعيده. وفي حال كانت تلك المصفوفة أو المجموعة أو القائمة فارغةً أو تحوي أكثر من عنصر واحد، فستعيد الدالة singleOrNull()
القيمة null
:
fun <T> Array<out T>.singleOrNull(): T?
fun ByteArray.singleOrNull(): Byte?
fun ShortArray.singleOrNull(): Short?
fun IntArray.singleOrNull(): Int?
fun LongArray.singleOrNull(): Long?
fun FloatArray.singleOrNull(): Float?
fun DoubleArray.singleOrNull(): Double?
fun BooleanArray.singleOrNull(): Boolean?
fun CharArray.singleOrNull(): Char?
fun <T> Iterable<T>.singleOrNull(): T?
fun <T> List<T>.singleOrNull(): T?
وإن استدعيت مع مصفوفة ومرِّر إليها الشرط predicate
كمعامل، فستتحقَّق من تطابق عنصر واحد فقط من عناصر تلك المصفوفة مع ذلك الشرط. وفي حال تطابق أكثر من عنصر مع ذلك الشرط المنطقي أو لم يكن هنالك أي عنصر في المصفوفة، فستعيد الدالة singleOrNull()
القيمة null
:
inline fun <T> Array<out T>.singleOrNull(
predicate: (T) -> Boolean
): T?
inline fun ByteArray.singleOrNull(
predicate: (Byte) -> Boolean
): Byte?
inline fun ShortArray.singleOrNull(
predicate: (Short) -> Boolean
): Short?
inline fun IntArray.singleOrNull(
predicate: (Int) -> Boolean
): Int?
inline fun LongArray.singleOrNull(
predicate: (Long) -> Boolean
): Long?
inline fun FloatArray.singleOrNull(
predicate: (Float) -> Boolean
): Float?
inline fun DoubleArray.singleOrNull(
predicate: (Double) -> Boolean
): Double?
inline fun BooleanArray.singleOrNull(
predicate: (Boolean) -> Boolean
): Boolean?
inline fun CharArray.singleOrNull(
predicate: (Char) -> Boolean
): Char?
inline fun <T> Iterable<T>.singleOrNull(
predicate: (T) -> Boolean
): T?
المعاملات
predicate
دالة تطبق على كل عنصر من عناصر المصفوفة أو المجموعة أو القائمة المعطاة، إذ يمرر إليها العنصر ثم تعيد القيمة المنطقية المقابلة له.
القيم المعادة
يعاد العنصر الوحيد الموجود في المصفوفة أو المجموعة أو القائمة المعطاة، أو العنصر الوحيد الذي حقَّق الشرط predicate
(إن أعطي)، أو القيمة null
خلاف ذلك.
أمثلة
استعمال الدالة ()singleOrNull
للتأكد من احتواء مصفوفة على عنصر وحيد وجلبه:
fun main(args: Array<String>) {
var array = arrayOf(0)
print(array.singleOrNull()) // 0
}
استعمال الدالة ()singleOrNull
للتأكد من احتواء مصفوفة على عنصر وحيد وجلبه إن كان كذلك محقَّقًا:
fun main(args: Array<String>) {
var array = arrayOf(0, 6)
print(array.singleOrNull()) // null
}
انظر أيضًا
- الدالة
single()
: تتحقَّق من حواية المصفوفة أو المجموعة أو القائمة التي استُدعيت معها عنصرًا واحدًا فقط أو عنصرًا واحدًا محققًا لشرط معيَّن ثمَّ تعيده أو تطلق استثناءً خلاف ذلك. - الدالة
slice()
: تقطع جزءًا محدَّدًا من المصفوفة أو القائمة التي استُدعيت معها ثمَّ تعيده في قائمة.