الفرق بين المراجعتين لصفحة: «Kotlin/collections/filterIsInstance»
< Kotlin | collections
جميل-بيلوني (نقاش | مساهمات) طلا ملخص تعديل |
|||
سطر 13: | سطر 13: | ||
وجود الكلمة المفتاحية <code>inline</code> يدل على أنَّ هذه الدالة مباشرة (لمزيد من التفاصيل، راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة]])، و<nowiki/>استخدام الكلمة المفتاحية <code>reified</code> يسمح بالوصول إلى نوعٍ مُمرَّر كمتحولٍ وسيطٍ (parameter، راجع [[Kotlin/inline functions#.D8.A7.D9.84.D9.85.D8.AA.D8.AD.D9.88.D9.91.D9.84.D8.A7.D8.AA .D9.85.D9.86 .D8.A7.D9.84.D9.86.D9.88.D8.B9 reified.C2.A0|توثيق reified]] للمزيد من التفاصيل). | وجود الكلمة المفتاحية <code>inline</code> يدل على أنَّ هذه الدالة مباشرة (لمزيد من التفاصيل، راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة]])، و<nowiki/>استخدام الكلمة المفتاحية <code>reified</code> يسمح بالوصول إلى نوعٍ مُمرَّر كمتحولٍ وسيطٍ (parameter، راجع [[Kotlin/inline functions#.D8.A7.D9.84.D9.85.D8.AA.D8.AD.D9.88.D9.91.D9.84.D8.A7.D8.AA .D9.85.D9.86 .D8.A7.D9.84.D9.86.D9.88.D8.B9 reified.C2.A0|توثيق reified]] للمزيد من التفاصيل). | ||
== القيم | == القيم المعادة == | ||
تُعاد [[Kotlin/List|قائمة]] تحوي عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] المعطاة التي هي نسخةٌ (instance) من نوع أو [[Kotlin/classes|صنفٍ]] معيّن. | تُعاد [[Kotlin/List|قائمة]] تحوي عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] المعطاة التي هي نسخةٌ (instance) من نوع أو [[Kotlin/classes|صنفٍ]] معيّن. | ||
مراجعة 12:35، 19 أغسطس 2018
تعيد الدالة 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 للمزيد من التفاصيل).
القيم المعادة
تُعاد قائمة تحوي عناصر المصفوفة أو المجموعة المعطاة التي هي نسخةٌ (instance) من نوع أو صنفٍ معيّن.
أمثلة
استخدام الدالة ()filterIsInstance
مع المصفوفات
تعرِّف الشيفرة الآتية مصفوفة باسم array
باستخدام الدالة ()arrayOf
ثمَّ تستخدم الدالة ()filterIsInstance
لترشيح العناصر التي من النوع "سلسلة نصية" فقط:
fun main(args: Array<String>) {
val array = arrayOf("hsoub", 5, "mostaql", "khamsat", 3)
println(array.filterIsInstance<String>()) // [hsoub, mostaql, khamsat]
}
انظر أيضًا
- الدالة
filter()
: ترشِّح عناصر المصفوفة أو المجموعة أو أزواج الخرائط المعطاة التي تحقِّق شرطًا معيَّنًا ثمّ تعيدها. - الدالة
filterIndexed()
: ترشِّح عناصر المصفوفة أو المجموعة المعطاة التي تُعاد القيمةtrue
معها عند تطبيق الدالةpredicate()
المُمرّرة عليها، إذ يمرَّر فهرس كل عنصر وقيمته إلى الدالةpredicate()
ثم تعيد بدورها قيمة منطقيَّة. - الدالة
filterIndexedTo()
: تضيف إلى المعاملdestination
المُمرَّر إليها عناصر المجموعة المتغيرة (MutableCollection) المعطاة التي أعيدت القيمةtrue
مع كل عنصر منها عند تطبيق الدالةpredicate()
المُمرّرة عليها. - الدالة
filterIsInstanceTo()
: تضيف عناصر المصفوفة أو المجموعة المعطاة التي هي نسخةٌ (instance) من نوع أو صنفٍ معيّن إلى المجموعة المتغيرةdestination
المُمرّرة إليها.