الدالة mapNotNull()
في لغة Kotlin
تعيد الدالةmapNotNull()
لائحة تضم ناتج تطبيق الدالة transform()
المُمرّرة إليها على عناصر المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال استدعاء الدالة mapNotNull()
على قاموس فستعيد لائحة تضم ناتج تطبيق الدالة transform()
على مداخل (entries) القاموس.
البنية العامة
يمكن استدعاء الدالةmapNotNull()
على المصفوفات.
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) -> R): List<R>
inline fun <R> FloatArray.map(
transform: (Float) -> R
): List<R>
inline fun <R> DoubleArray.map(
transform: (Double) -> R
): List<R>
inline fun <R> BooleanArray.map(
transform: (Boolean) -> R
): List<R>
inline fun <R> CharArray.map(transform: (Char) -> R): List<R>
يمكن استدعاء الدالةmapNotNull()
على المجموعات.
inline fun <T, R> Iterable<T>.map(
transform: (T) -> R
): List<R>
يمكن استدعاء الدالةmapNotNull()
على القواميس.
inline fun <K, V, R> Map<out K, V>.map(
transform: (Entry<K, V>) -> R
): List<R>
يُلاحَظ وجود الكلمة المفتاحية inline
للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع توثيق الدوال المباشرة (inline functions).
القيم المٌعادة
تعيد الدالةmap()
لائحة تضم ناتج تطبيق الدالة المُمرّرة transform()
المُمرّرة إليها على عناصر المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال استدعاء الدالة map()
على قاموس فستعيد لائحة تضم ناتج تطبيق الدالة transform()
على مداخل (entries) القاموس.
أمثلة
استخدام الدالة ()mapNotNull
مع القواميس
تعرف الشيفرة الآتية قاموسًا باسم m
مكونًا من ثلاثة أزواج باستخدام الدالة ()mapNotNull
، ثم تُعرّف الدالة ()func
، ثم تستخدم الدالة ()map
بتمرير ()func
كمعامل، ثم تطبع الناتج:
fun main(args: Array<String>) {
val m = mapOf("x" to 2, "y" to 6, "z" to 5)
val func : (Int) -> Array<Int> = { arrayOf(it)}
println(m.map { (a, b) -> listOf(a) }) // [[x], [y], [z]]
}
انظر أيضًا
mapIndexed()
: تضيف إلى اللائحة المُمرّرة إليها ناتج تطبيق الدالةtransform()
المُمرّرة إليها على عناصر المصفوفة أو المجموعة أو القاموس وفهارسها.