الدالة component1()
في لغة Kotlin
تعيد الدالة component1()
العنصر الأول من المصفوفة التي استُدعيت عبرها، وفي حال استُدعيت عبر قاموس فستعيد مركبة المفتاح (key component) الخاصة بمدخل القاموس (map entry)، وتسمح هذه الدالة باستخدام التصريحات التفكيكية (destructuring declarations) عند العمل على القواميس.
البنية العامة
يمكن استدعاء الدالة component1()
عبر المصفوفات واللوائح (List
):
inline operator fun <T> Array<out T>.component1(): T
inline operator fun ByteArray.component1(): Byte
inline operator fun ShortArray.component1(): Short
inline operator fun IntArray.component1(): Int
inline operator fun LongArray.component1(): Long
inline operator fun FloatArray.component1(): Float
inline operator fun DoubleArray.component1(): Double
inline operator fun BooleanArray.component1(): Boolean
inline operator fun CharArray.component1(): Char
inline operator fun <T> List<T>.component1(): T
ويمكن استدعاء الدالة component1()
عبر القواميس (maps):
inline operator fun <K, V> Entry<K, V>.component1(): K
يُلاحَظ وجود الكلمة المفتاحية inline
للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع توثيق الدوال المباشرة (inline functions).
القيم المعادة
العنصر الأول من المصفوفة التي استُدعيت عبرها، وفي حال استُدعيت عبر قاموس فستعيد مركبة المفتاح (key component) الخاصة بمدخل القاموس (map entry).
أمثلة
استخدام الدالة ()component1
مع اللوائح
تعرف الشيفرة الآتية لائحة باسم list
مكونة من خمسة حروف باستخدام الدالة ()listOf
، ثم تستخدم الدالة ()component1
للحصول على العنصر الأول من اللائحة list
ثم تطبع الناتج:
fun main(args: Array<String>) {
val list = listOf('a', 'b', 'c', 'd', 'e')
println(list.component1()) // a
}
استخدام الدالة ()component1
مع القواميس
تعرف الشيفرة الآتية قاموسًا باسم map
مكونة من زوجين باستخدام الدالة ()hashMapOf
، ثم تستخدم الدالة ()component1
للحصول على المركب الأول من مداخل القاموس (entries) في الحلقة for
ثم تطبع الناتج:
fun main(args: Array<String>) {
val map = hashMapOf("foo" to 1, "bar" to 2)
for (x in map) {
println(x.component1()) // bar foo
}
}
انظر أيضًا
associate()
: تعيد قاموسًا (map).