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

من موسوعة حسوب
< Kotlin‏ | collections
مراجعة 07:41، 8 سبتمبر 2018 بواسطة جميل-بيلوني (نقاش | مساهمات)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)
اذهب إلى التنقل اذهب إلى البحث

تحذف الدالة 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) العنصر الأخير في المصفوفة أو القائمة.

مصادر