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

من موسوعة حسوب

تحذف الدالة distinct()‎ العناصر المتكررة الموجودة في المصفوفة أو المجموعة التي استُدعيت معها وتعيد الناتج في قائمة. تُرتَّب العناصر في القائمة الناتجة بنفس ترتيبها في المصفوفة أو المجموعة الأصليَّة.

البنية العامة

تستدعى الدالة distinct()‎ مع مصفوفة:

fun <T> Array<out T>.distinct(): List<T> 
fun ByteArray.distinct(): List<Byte> 
fun ShortArray.distinct(): List<Short> 
fun IntArray.distinct(): List<Int> 
fun LongArray.distinct(): List<Long> 
fun FloatArray.distinct(): List<Float> 
fun DoubleArray.distinct(): List<Double> 
fun BooleanArray.distinct(): List<Boolean> 
fun CharArray.distinct(): List<Char>

وتستدعى مع مجموعة:

fun <T> Iterable<T>.distinct(): List<T>

القيم المعادة

تُعاد قائمة تحتوي على عناصر المصفوفة أو المجموعة التي استُدعيت معها بعد حذف العناصر المتكررة.

أمثلة

استخدام الدالة ()distinct مع المصفوفات

تعرِّف الشيفرة الآتية مصفوفة باسم array باستخدام الدالة ()arrayOf ثم تستخدم الدالة ()count لحذف العناصر المتكررة:

fun main(args: Array<String>) {
    val array = arrayOf(1, 2, 3, 4, 4, 5, 2, 6, 22)
    println(array.distinct()) // [1, 2, 3, 4, 5, 6, 22]
}

انظر أيضًا

  • الدالة distinctBy()‎: تعيد قائمة تحتوي على العناصر الموجودة في المصفوفة أو المجموعة التي استُدعيت معها والتي تعطي نتيجة مختلفة عند تطبيق الدالة selector عليها فقط.  
  • الدالة copyOf()‎: تنسخ الدالة كامل المصفوفة التي استُدعيت معها أو جزءًا منها.
  • الدالة drop()‎: تعيد قائمة تحوي جميع عناصر المصفوفة أو المجموعة التي استُدعيت معها باستثناء أول n عنصر.
  • الدالة count()‎: تعيد عدد عناصر المصفوفة أو المجموعة أو الخريطة التي استُدعيت معها.
  • الخاصية lastIndex: تجلب فهرس (index) العنصر الأخير في المصفوفة أو القائمة.

مصادر