الفرق بين المراجعتين لصفحة: «Kotlin/Array»
لا ملخص تعديل |
لا ملخص تعديل |
||
سطر 177: | سطر 177: | ||
=== <code>[[Kotlin/collections/firstOrNull|firstOrNull]]</code> === | === <code>[[Kotlin/collections/firstOrNull|firstOrNull]]</code> === | ||
تعيد الدالة<code>firstOrNull()</code> العنصر الأول من <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها، وفي حال تمرير دالة منطقية كمعامل فستعيد أول عنصر يحقق تلك الدالة. | |||
=== <code>[[Kotlin/collections/flatMap|flatMap]]</code> === | === <code>[[Kotlin/collections/flatMap|flatMap]]</code> === | ||
تعيد الدالة<code>flatMap()</code> لائحة تضم ناتج تطبيق الدالة <code>transform()</code> المُمرّرة إليها على عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها، وفي حال استدعاء الدالة <code>flatMap()</code> على قاموس فستعيد لائحة تضم ناتج تطبيق الدالة <code>transform()</code> على مداخل (entries) القاموس. | |||
=== <code>[[Kotlin/collections/flatMapTo|flatMapTo]]</code> === | === <code>[[Kotlin/collections/flatMapTo|flatMapTo]]</code> === | ||
تضيف الدالة<code>flatMapTo()</code> إلى اللائحة المُتغيرة (<code>MutableCollection</code>) <code>destination</code>المُمرّرة إليها ناتج تطبيق الدالة <code>transform()</code> على عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها، وفي حال استدعاء الدالة <code>flatMapTo()</code> على قاموس فستضيف إلى اللائحة <code>destination</code> ناتج تطبيق الدالة <code>transform()</code> على مداخل (entries) القاموس. | |||
=== <code>[[Kotlin/collections/flatten|flatten]]</code> === | === <code>[[Kotlin/collections/flatten|flatten]]</code> === | ||
تعيد الدالة<code>flatten()</code> لائحة تحتوي جميع عناصر <nowiki/>[[Kotlin/Array|المصفوفات]] أو <nowiki/>[[Kotlin/collections|المجموعات]] التي تنتمي إلى <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها. | |||
=== <code>[[Kotlin/collections/fold|fold]]</code> === | === <code>[[Kotlin/collections/fold|fold]]</code> === | ||
يختلف سلوك الدالة<code>fold()</code> حسب نوع الكائنات التي استُدعيت عبرها و نوع المعاملات (parameters) المُمرّرة إليها (انظر فقرة <nowiki/>[[Kotlin/collections/fold#.D8.A7.D9.84.D8.A8.D9.86.D9.8A.D8.A9 .D8.A7.D9.84.D8.B9.D8.A7.D9.85.D8.A9|البنية العامة]]). | |||
=== <code>[[Kotlin/collections/foldIndexed|foldIndexed]]</code> === | === <code>[[Kotlin/collections/foldIndexed|foldIndexed]]</code> === | ||
تُراكِم الدالة<code>foldIndexed()</code> القيم بدءًا من القيمة المُمرّرة <code>initial</code> وتطبّق العملية <code>operation</code> من اليسار إلى اليمين على القيمة المُتراكمة الراهنة وعلى العنصر التالي من <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها وكذلك فهرسه. وتُعيد القيمة النهائية. | |||
=== <code>[[Kotlin/collections/foldRight|foldRight]]</code> === | === <code>[[Kotlin/collections/foldRight|foldRight]]</code> === | ||
تُراكِم الدالة<code>foldRight()</code> القيم بدءًا من القيمة المُمرّرة <code>initial</code> وتطبّق العملية <code>operation</code> من اليمين إلى اليسار على القيمة المُتراكمة الراهنة وعلى العنصر التالي من <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها. وتُعيد القيمة النهائية. | |||
=== <code>[[Kotlin/collections/foldRightIndexed|foldRightIndexed]]</code> === | === <code>[[Kotlin/collections/foldRightIndexed|foldRightIndexed]]</code> === | ||
تُراكِم الدالة<code>foldRightIndexed()</code> القيم بدءًا من القيمة المُمرّرة <code>initial</code> وتطبّق العملية <code>operation</code> من اليمين إلى اليسار على القيمة المُتراكمة الراهنة وعلى العنصر التالي من <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها وكذلك فهرسه. وتُعيد القيمة النهائية. | |||
=== <code>[[Kotlin/collections/forEach|forEach]]</code> === | === <code>[[Kotlin/collections/forEach|forEach]]</code> === | ||
تُنفّد الدالةُ<code>forEach()</code> الدالةَ المُمرّرةَ <code>action</code> على كل عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو القاموس الذي استُدعيت عبره. | |||
=== <code>[[Kotlin/collections/forEachIndexed|forEachIndexed]]</code> === | === <code>[[Kotlin/collections/forEachIndexed|forEachIndexed]]</code> === | ||
تُنفّد الدالةُ<code>forEachIndexed()</code> الدالةَ المُمرّرةَ <code>action</code> على كل عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو القاموس الذي استُدعيت عبره وعلى فهارسها (indices). | |||
=== <code>[[Kotlin/collections/getOrElse|getOrElse]]</code> === | === <code>[[Kotlin/collections/getOrElse|getOrElse]]</code> === | ||
تعيد الدالة <code>getOrElse()</code> قيمة العنصر عند الفهرس <code>index</code> المُحدَّد في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها. ، أو نتيجة استدعاء الدالة المُمرّرة <code>defaultValue</code> إن كان الفهرس خارج الحدود. | |||
ان استُدعيت الدالة عبر قاموس فستُعيد القيمة المقابلة للمفتاح <code>key</code> المُمرّر إلى الدالة، أو نتيجة استدعاء الدالة المُمرّرة <code>defaultValue</code> إن كان المفتاح<code>key</code> موجودًا. | |||
=== <code>[[Kotlin/collections/getOrNull|getOrNull]]</code> === | === <code>[[Kotlin/collections/getOrNull|getOrNull]]</code> === | ||
تعيد الدالة <code>getOrNull()</code> قيمة العنصر عند الفهرس <code>index</code> المُحدَّد في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها. ، أو <code>null</code> إن كان الفهرس خارج الحدود. | |||
=== <code>[[Kotlin/collections/groupBy|groupBy]]</code> === | === <code>[[Kotlin/collections/groupBy|groupBy]]</code> === | ||
تعيد الدالة<code>groupBy()</code> قاموسًا يُجمّع عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها حيث مفاتيحه تعيدها الدالة المُمرّرة <code>keySelector</code> وقيمه لوائحُ تضم عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] (أو ناتج تمرير عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] على الدالة <code>valueTransform</code> في حال تمريرها). | |||
=== <code>[[Kotlin/collections/groupByTo|groupByTo]]</code> === | === <code>[[Kotlin/collections/groupByTo|groupByTo]]</code> === | ||
تجمّع الدالة<code>groupByTo()</code> عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها وتضيفها إلى القاموس.المُمرّر <code>destination</code> حيث مفاتيحه تعيدها الدالة الممرّرة <code>keySelector()</code> مُطبّقة على كل عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]]، وقيمُه لوائح تضم العناصر المقابلة، وفي حال تمرير معامل ثالث<code>valueTransform</code> فإنّ القيم ستكون لوائح تضم ناتج تطبيق الدالة <code>valueTransform</code> على العناصر المقابلة . ثم تعيد القاموس<code>destination.</code> | |||
=== <code>[[Kotlin/collections/groupingBy|groupingBy]]</code> === | === <code>[[Kotlin/collections/groupingBy|groupingBy]]</code> === | ||
تُنشئ الدالة<code>groupingBy()</code> كائنًا من النوع <code>Grouping</code> من <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها لاستخدامه لاحقًا مع عمليات المجموعات (group-and-fold operations)، وذلك باستخدام الدالة المُمرّرة <code>keySelector</code> لاستخلاص مفتاح من كل عنصر . | |||
=== <code>[[Kotlin/collections/indexOf|indexOf]]</code> === | === <code>[[Kotlin/collections/indexOf|indexOf]]</code> === | ||
تعيد الدالة <code>indexOf()</code> فهرس أول ظهور للعنصر المُمرّر إليها في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو اللائحة التي استُدعيت عبرها ، أو <code>-1</code> إن كان العنصر المُمرّر غير موجود. | |||
=== <code>[[Kotlin/collections/indexOfFirst|indexOfFirst]]</code> === | === <code>[[Kotlin/collections/indexOfFirst|indexOfFirst]]</code> === | ||
تعيد الدالة <code>indexOfFirst()</code> فهرس أول ظهور للعنصر المُمرّر إليها في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو اللائحة التي استُدعيت عبرها والذي يحقق الشرط المنطقي المُمرّر <code>predicate</code>، أو <code>-1</code> إن لم يكن هناك أي عنصر يحقق ذلك. | |||
=== <code>[[Kotlin/collections/indexOfLast|indexOfLast]]</code> === | === <code>[[Kotlin/collections/indexOfLast|indexOfLast]]</code> === | ||
تعيد الدالة <code>indexOfLast()</code> فهرس آخر ظهور للعنصر المُمرّر إليها في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو اللائحة التي استُدعيت عبرها والذي يحقق الشرط المنطقي المُمرّر <code>predicate</code>، أو <code>-1</code> إن لم يكن هناك أي عنصر يحقق ذلك. | |||
=== <code>[[Kotlin/collections/intersect|intersect]]</code> === | === <code>[[Kotlin/collections/intersect|intersect]]</code> === | ||
تعيد الدالة <code>intersect()</code>مجموعة تحتوي كل العناصر المشتركة بين <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها وتلك الممرّرة إلى الدالة. | |||
=== <code>[[Kotlin/jvm/isArrayOf|isArrayOf]]</code> === | === <code>[[Kotlin/jvm/isArrayOf|isArrayOf]]</code> === | ||
تتحقق الدالة <code>isArrayOf()</code> من أنّ <nowiki/>[[Kotlin/Array|المصفوفة]] التي استُدعيت عبرها يمكن أن تحتوي عناصر من النوع المحدد. | |||
=== <code>[[Kotlin/collections/isEmpty|isEmpty]]</code> === | === <code>[[Kotlin/collections/isEmpty|isEmpty]]</code> === | ||
تعيد الدالة <code>isEmpty()</code> القيمة <code>true</code> إن كانت <nowiki/>[[Kotlin/Array|المصفوفة]] التي استُدعيت عبرها فارغةً. | |||
=== <code>[[Kotlin/collections/isNotEmpty|isNotEmpty]]</code> === | === <code>[[Kotlin/collections/isNotEmpty|isNotEmpty]]</code> === | ||
تعيد الدالة <code>isNotEmpty()</code> القيمة <code>true</code> إن كانت <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها غير فارغةً. | |||
=== <code>[[Kotlin/collections/joinTo|joinTo]]</code> === | === <code>[[Kotlin/collections/joinTo|joinTo]]</code> === | ||
تجمّع الدالة<code>joinTo()</code> سلسة نصية من عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها مفصولة بالمعامل المُمرّر <code>separator</code> وباستخدام البادئة<code>prefix</code> واللاحقة <code>postfix</code> في حال تمريرهما، | |||
=== <code>[[Kotlin/collections/joinToString|joinToString]]</code> === | === <code>[[Kotlin/collections/joinToString|joinToString]]</code> === | ||
تنشئ الدالة<code>joinToString()</code> سلسة نصية من عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها مفصولة بالمعامل المُمرّر <code>separator</code> وباستخدام البادئة <code>prefix</code> واللاحقة <code>postfix</code> في حال تمريرهما، | |||
=== <code>[[Kotlin/collections/last|last]]</code> === | === <code>[[Kotlin/collections/last|last]]</code> === | ||
تعيد الدالة<code>last()</code> العنصر الأخير من <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو اللائحة التي استُدعيت عبرها. في حال تمرير شرط منطقي <code>predicate</code> كوسيط فستعيد العنصر الأخير الذي يحقق ذلك الشرط. | |||
=== <code>[[Kotlin/collections/lastIndexOf|lastIndexOf]]</code> === | === <code>[[Kotlin/collections/lastIndexOf|lastIndexOf]]</code> === | ||
تعيد الدالة<code>lastIndexOf()</code> آخر فهرس للعنصر الممرّر إلى <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو اللائحة التي استُدعيت عبرها. وإن لم يكن العنصر موجودًا فستعيد <code>-1</code>. | |||
=== <code>[[Kotlin/collections/lastOrNull|lastOrNull]]</code> === | === <code>[[Kotlin/collections/lastOrNull|lastOrNull]]</code> === | ||
تعيد الدالة<code>lastOrNull()</code> العنصر الأخير من <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو اللائحة التي استُدعيت عبرها. في حال تمرير شرط منطقي <code>predicate</code> كوسيط فستعيد العنصر الأخير الذي يحقق ذلك الشرط. | |||
=== <code>[[Kotlin/collections/map|map]]</code> === | === <code>[[Kotlin/collections/map|map]]</code> === | ||
تعيد الدالة<code>map()</code> لائحة تضم ناتج تطبيق الدالة <code>transform()</code> المُمرّرة إليها على عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها، وفي حال استدعاء الدالة <code>map()</code> على قاموس فستعيد لائحة تضم ناتج تطبيق الدالة <code>transform()</code> على مداخل (entries) القاموس. | |||
=== <code>[[Kotlin/collections/mapIndexed|mapIndexed]]</code> === | === <code>[[Kotlin/collections/mapIndexed|mapIndexed]]</code> === | ||
تعيد الدالة<code>mapIndexed()</code> لائحة تضم ناتج تطبيق الدالة <code>transform()</code> المُمرّرة إليها على عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها وعلى فهارسها. | |||
=== <code>[[Kotlin/collections/mapIndexedNotNull|mapIndexedNotNull]]</code> === | === <code>[[Kotlin/collections/mapIndexedNotNull|mapIndexedNotNull]]</code> === | ||
تعيد الدالة<code>mapIndexedNotNull()</code> لائحة تضم فقط النتائج غير المعدومة (<code>non-null</code>) لتطبيق الدالة <code>transform()</code> على عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو<nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها وعلى فهارسها. | |||
=== <code>[[Kotlin/collections/mapIndexedNotNullTo|mapIndexedNotNullTo]]</code> === | === <code>[[Kotlin/collections/mapIndexedNotNullTo|mapIndexedNotNullTo]]</code> === | ||
تطبق الدالة<code>mapIndexedNotNullTo()</code> الدالة المُمررّة <code>transform()</code> على عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها وعلى فهارسها وتضيف فقط النتائج غير المعدومة (<code>non-null</code>) إلى المعامل الممرّر <code>destination</code>. | |||
=== <code>[[Kotlin/collections/mapIndexedTo|mapIndexedTo]]</code> === | === <code>[[Kotlin/collections/mapIndexedTo|mapIndexedTo]]</code> === | ||
تطبق الدالة<code>mapIndexedTo()</code> الدالة المُمررّة <code>transform()</code> على عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها وعلى فهارسها وتضيف النتائج إلى المعامل الممرّر <code>destination</code>. | |||
=== <code>[[Kotlin/collections/mapNotNull|mapNotNull]]</code> === | === <code>[[Kotlin/collections/mapNotNull|mapNotNull]]</code> === | ||
تعيد الدالة<code>mapNotNull()</code> لائحة تضم النتائج غير المعدومة (non-null) لتطبيق الدالة <code>transform()</code> المُمرّرة على عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]]<nowiki/>التي استُدعيت عبرها، وفي حال استدعاء الدالة <code>mapNotNull()</code> على قاموس فستعيد لائحة تضم النتائج غير المعدومة (non-null) لتطبيق الدالة<code>transform()</code> على مداخل (entries) القاموس. | |||
=== <code>[[Kotlin/collections/mapNotNullTo|mapNotNullTo]]</code> === | === <code>[[Kotlin/collections/mapNotNullTo|mapNotNullTo]]</code> === | ||
تطبق الدالة<code>mapNotNullTo()</code> الدالة المُمررّة <code>transform()</code> على عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها وتضيف النتائج غير المعدومة (non-null) إلى المعامل الممرّر <code>destination</code>. وفي حال استدعاء الدالة <code>mapNotNullTo()</code> على قاموس فستضيف النتائج غير المعدومة (non-null) لتطبيق الدالة<code>transform()</code> على مداخل (entries) القاموس إلى المعامل الممرّر <code>destination</code>. | |||
=== <code>[[Kotlin/collections/mapTo|mapTo]]</code> === | === <code>[[Kotlin/collections/mapTo|mapTo]]</code> === | ||
تطبق الدالة<code>mapTo()</code> الدالة المُمررّة <code>transform()</code> على عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها وتضيف النتائج إلى المعامل الممرّر<code>destination</code>. وفي حال استدعاء الدالة <code>mapTo()</code> على قاموس فستضيف نتائج تطبيق الدالة<code>transform()</code> على مداخل (entries) القاموس إلى المعامل الممرّر <code>destination</code>. | |||
=== <code>[[Kotlin/collections/max|max]]</code> === | === <code>[[Kotlin/collections/max|max]]</code> === | ||
تعيد الدالة<code>max()</code> أكبر عنصر في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها، أو <code>null</code> إن كانت فارغة. | |||
=== <code>[[Kotlin/collections/maxBy|maxBy]]</code> === | === <code>[[Kotlin/collections/maxBy|maxBy]]</code> === | ||
تعيد الدالة<code>maxBy()</code> العنصر الأول في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبره والذي له أكبر قيمة معادة من الدالة الممررة <code>selector</code>، أو <code>null</code> إن لم يكن هناك أي عنصر يحقق ذلك. | |||
في حال استدعاء الدالة <code>maxBy()</code> عبر قاموس فستعيد المدخل (Entry) الأول في ذلك القاموس والذي له أكبر قيمة معادة من الدالة الممررة <code>selector</code>، أو <code>null</code> إن لم يكن هناك أي مدخل يحقق ذلك. | |||
=== <code>[[Kotlin/collections/maxWith|maxWith]]</code> === | === <code>[[Kotlin/collections/maxWith|maxWith]]</code> === | ||
تعيد الدالة<code>maxWith()</code> العنصر الأول في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبره والذي له أكبر قيمة بحسب المقارِن <code>comparator</code> الممرّر، أو <code>null</code>إن لم يكن هناك أي عنصر يحقق ذلك. | |||
في حال استدعاء الدالة <code>maxWith()</code> عبر قاموس فستعيد المدخل (Entry) الأول في ذلك القاموس والذي له أكبر قيمة حسب المقارِن <code>comparator</code>، أو<code>null</code> إن لم يكن هناك أي مدخل يحقق ذلك. | |||
=== <code>[[Kotlin/collections/min|min]]</code> === | === <code>[[Kotlin/collections/min|min]]</code> === | ||
تعيد الدالة<code>min()</code> أصغر عنصر في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها، أو <code>null</code> إن كانت فارغة. | |||
=== <code>[[Kotlin/collections/minBy|minBy]]</code> === | === <code>[[Kotlin/collections/minBy|minBy]]</code> === | ||
تعيد الدالة<code>minBy()</code> العنصر الأول في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبره والذي له أصغر قيمة معادة من الدالة الممررة <code>selector</code>، أو <code>null</code> إن لم يكن هناك أي عنصر يحقق ذلك. | |||
في حال استدعاء الدالة <code>minBy()</code> عبر قاموس فستعيد المدخل (Entry) الأول في ذلك القاموس والذي له أصغر قيمة معادة من الدالة الممررة <code>selector</code>، أو <code>null</code> إن لم يكن هناك أي مدخل يحقق ذلك. | |||
=== <code>[[Kotlin/collections/minWith|minWith]]</code> === | === <code>[[Kotlin/collections/minWith|minWith]]</code> === | ||
تعيد الدالة<code>minWith()</code> العنصر الأول في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها والذي له أصغر قيمة بحسب المقارِن <code>comparator</code> الممرّر، أو<code>null</code> إن لم يكن هناك أي عنصر يحقق ذلك. | |||
في حال استدعاء الدالة <code>minWith()</code> عبر قاموس فستعيد المدخل (Entry) الأول في ذلك القاموس والذي له أصغر قيمة حسب المقارِن <code>comparator</code>، أو<code>null</code> إن لم يكن هناك أي مدخل يحقق ذلك. | |||
=== <code>[[Kotlin/collections/none|none]]</code> === | === <code>[[Kotlin/collections/none|none]]</code> === | ||
تعيد الدالة<code>none()</code> القيمة <code>true</code> إن كانت <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها فارغة، أو تعيد <code>false</code>. وفي حال تمرير شرط منطقي<code>predicate</code>. فستعيد <code>true</code> إن لم يكن هناك أي عنصر يحقق ذلك الشرط المنطقي، أو تعيد <code>false</code>. | |||
=== <code>[[Kotlin/collections/orEmpty|orEmpty]]</code> === | === <code>[[Kotlin/collections/orEmpty|orEmpty]]</code> === | ||
تعيد الدالة<code>orEmpty()</code>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو اللائحة أو القاموس الذي استُدعيت عبره إن لم يكن يساوي <code>null</code>، أو تعيد <nowiki/>[[Kotlin/Array|مصفوفة]] أو <nowiki/>[[Kotlin/collections|مجموعة]] أو لائحةأو قاموسًا فارغًا. | |||
=== <code>[[Kotlin/collections/partition|partition]]</code> === | === <code>[[Kotlin/collections/partition|partition]]</code> === | ||
تُقسّم الدالةُ<code>partition()</code> <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها إلى زوج مكوّن من لائحتين، اللائحة الأولى تضم العناصر التي تحقق الشرط المنطقي المُمرّر <code>predicate</code> (أي تعيد <code>true</code>)، بينما تضم الثانية العناصر الأخرى. | |||
=== <code>[[Kotlin/collections/plus|plus]]</code> === | === <code>[[Kotlin/collections/plus|plus]]</code> === | ||
يختلف سلوك الدالة <code>plus()</code> حسب نوع الكائنات التي استُدعيت عبرها ونوع الوسائط الممررة (انظر فقرة <nowiki/>[[Kotlin/collections/plus#.D8.A7.D9.84.D8.A8.D9.86.D9.8A.D8.A9 .D8.A7.D9.84.D8.B9.D8.A7.D9.85.D8.A9|البنية العامة]]). | |||
=== <code>[[Kotlin/collections/plusElement|plusElement]]</code> === | === <code>[[Kotlin/collections/plusElement|plusElement]]</code> === | ||
تضيف الدالة <code>plusElement()</code> العنصر المُمرّر إلى <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها. | |||
=== <code>[[Kotlin/collections/reduce|reduce]]</code> === | === <code>[[Kotlin/collections/reduce|reduce]]</code> === | ||
يختلف سلوك الدالة<code>reduce()</code> حسب نوع الكائنات التي استُدعيت عبرها ونوع المعاملات (parameters) المُمرّرة إليها (انظر فقرة <nowiki/>[[Kotlin/collections/reduce#.D8.A7.D9.84.D8.A8.D9.86.D9.8A.D8.A9 .D8.A7.D9.84.D8.B9.D8.A7.D9.85.D8.A9|البنية العامة]]). | |||
=== <code>[[Kotlin/collections/reduceIndexed|reduceIndexed]]</code> === | === <code>[[Kotlin/collections/reduceIndexed|reduceIndexed]]</code> === | ||
تُراكِم الدالة<code>reduceIndexed()</code> القيم بدءًا من العنصر الأول في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها وتطبّق العملية <code>operation</code> من اليسار إلى اليمين على القيمة المُتراكمة الراهنة وعلى العنصر الموالي في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها وعلى فهرسه. ثم تُعيد القيمة النهائية. | |||
=== <code>[[Kotlin/collections/reduceRight|reduceRight]]</code> === | === <code>[[Kotlin/collections/reduceRight|reduceRight]]</code> === | ||
=== <code>[[Kotlin/collections/reduceRightIndexed|reduceRightIndexed]]</code> === | === <code>[[Kotlin/collections/reduceRightIndexed|reduceRightIndexed]]</code> === |
مراجعة 19:18، 28 يونيو 2018
الدوال البانية
<int>
يعيد التابع Any()
نسخةً من الصنف Any
والذي هو الجذر الرئيسيّ في الهرميّة العامّة لأيّ صنفٍ مُستخدَمٍ أثناء البرمجة في Kotlin؛ أي أنّ كلَّ صنفٍ سيكون له الصنف الأعلى (superclass) Any
.
الدوال
size
تعبِّر الخاصيّة size
عن عدد العناصر الموجودة في المصفوفة (array).
iterator
يعيد التابع Array.iterator()
عنصرًا تكراريًّا (iterator) بهدف تكرار بنيةٍ (block) برمجيةٍ على كافّة عناصر المصفوفة.
get
يعيد التابع Array.get()
قيمة العنصر في المصفوفة عند الفهرس (index) المُحدَّد، ويمكن أيضًا استدعاء هذا التابع باستخدام معامل الفهرسة (index operator) المتمثل بالقوسين []
بالشكل:
الدوال الموروثة
equals
تبين الدالة equals()
إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعيت عبره.
hashCode
يعيد التابع hashCode()
قيمة الشيفرة hash code الخاصّة بالكائن الذي استُدعي عبره.
toString
يعيد التابع toString()
تمثيلًا نصيًا للكائن الذي يُستدعى عبره.
الخاصيات الإضافية (Extension Properties)
indices
تُستخدَم هذه الخاصيّة للحصول على الفهارس الصحيحة (valid indices) للمصفوفة أو المجموعة (collection).
lastIndex
تُستخدَم هذه الخاصيّة للحصول على الفهرس (index) الأخير للمصفوفة أو القائمة (list)، أو القيمة -1
إن كانت المصفوفة أو القائمة فارغةً.
الدوال الإضافية (Extension Functions)
all
تُعيد الدالة all()
القيمة true
إن كانت كافّة عناصر المصفوفة أو المجموعة (collection) التي استُدعيت عبرها تحقق العبارة المنطقية (predicate) المُحدَّدة، أو تعيد القيمة false
بخلاف ذلك.
any
يختلف سلوك الدالة any()
بحسب طريقة استدعائها، وسنناقش هذه الحالات تباعًا.
asIterable
تُنشئ الدالة asIterable()
نسخة تكرارية (Iterable instance) والتي تُغلّف المصفوفة الاصلية وتعيد عناصرها عندما تُستخدم في حلقات التكرار (مثلfor
).
asList
تُعيد الدالة asList()
لائحة (list) والتي تُغلّف المصفوفة الاصلية التي استُدعيت عبرها.
asSequence
تُنشئ الدالة asSequence()
نسخة من الواجهة Sequence
والتي تُغلّف المصفوفة الاصلية وتعيد عناصرها عندما تُستخدم في حلقات التكرار (مثلfor
).
associate
تعيد الدالة associate()
قاموسًا (map) يحتوي أزواجًا "مفتاح-قيمة" ناتجة عن تمرير عناصر المصفوفة أو المجموعة (Collection
) إلى الدالةtransform
.
associateBy
تعيد الدالة associateBy()
قاموسًا (map) يحتوي ناتج تمرير عناصر المصفوفة أو المجموعة (Collection
) إلى الدالة valueTransform
مُفهرسة بناتج تمرير عناصر المصفوفة أو المجموعة إلى الدالة keySelector
.
associateByTo
تعيد الدالة associateByTo()
قاموسًا متغيرا (mutable map) يحتوي ناتج تمرير عناصر المصفوفة أو المجموعة (Collection
) إلى الدالةvalueTransform
مُفهرسة بناتج تمرير عناصر المصفوفة أو المجموعة إلى الدالة keySelector
.
associateTo
تعيد الدالة associateTo()
قاموسًا متغيرا (mutable map) يحتوي ناتج تمرير عناصر المصفوفة أو المجموعة (Collection
) إلى الدالةtransform
.
average
تعيد الدالة average()
متوسط (average) عناصر المصفوفة أو المجموعة (Collection
).
binarySearch
تبحث الدالة binarySearch()
عن عنصر في المجموعة أو مجال من المجموعة (Collection
) التي استُدعيت عبرها باستخدام خوارزمية البحث الثنائي (binary search algorithm)، يُفترض أن تكون المجموعة مرتبة وفق المُقارِن comparator
وإلا فستكون النتيجة غير مُحدّدة.
component1
تعيد الدالة component1()
العنصر الأول من المصفوفة التي استُدعيت عبرها، وفي حال استُدعيت عبر قاموس فستعيد مركبة المفتاح (key component) الخاصة بمدخل القاموس (map entry)، وتسمح هذه الدالة باستخدام التصريحات التفكيكية (destructuring declarations) عند العمل على القواميس.
contains
تعيد الدالة contains()
القيمة true
إن كانت المصفوفة أو المجموعة التي استُدعيت عبرها تحتوي العنصر الممرّر إليها، وفي حال استُدعيت عبر قاموس فتعيد true
إن كان ذلك القاموس يحتوي ذلك العنصر كمفتاح (key
)، وتعيد false
خلاف ذلك.
contentDeepEquals
تعيد الدالة contentDeepEquals()
القيمة true
إن كانت المصفوفتان المحددتان متساويتان بعُمق، أي أنهما تحتويان على نفس عدد العناصر ونفس العناصر بنفس الترتيب، وتعيد false
خلاف ذلك.
contentDeepHashCode
تعيد الدالة contentDeepHashCode()
التكويد (hash code) استنادًا إلى محتوى المصفوفة التي استُدعيت عبرها كما لو كانت لائحة، المصفوفاتالمُتشعبة تعامل كاللوائح هي كذلك.
contentDeepToString
تعيد الدالةcontentDeepToString()
تمثيلًا نصيًا لمحتوى المصفوفة التي استُدعيت عبرها كما لو كانت لائحة، المصفوفات المُتشعبة تعامل كاللوائح هي كذلك.
contentEquals
تعيد الدالة contentEquals()
االقيمة true
إن كانت المصفوفتان المحددتان متساويتان بنيويًا (structurally equal)، أي أنهما تحتويان على نفس عدد العناصر ونفس العناصر بنفس الترتيب، وتعيد false
خلاف ذلك.
contentHashCode
تعيد الدالة contentHashCode()
التكويد (hash code) استنادًا إلى محتوى المصفوفة التي استُدعيت عبرها كما لو كانت لائحة.
contentToString
تعيد الدالةcontentToString()
تمثيلًا نصيًا لمحتوى المصفوفة التي استُدعيت عبرها كما لو كانت لائحة.
copyOf
تعيد الدالةcopyOf()
نسخة من المصفوفة التي استُدعيت عبرها. مع إمكانية تمرير newSize
كمعامل (parameter) لتحديد حجم المصفوفة الناتجة.
copyOfRange
تعيد الدالةcopyOfRange()
مصفوفة جديدة، والتي هي نسخة من مجال (range) من المصفوفة التي استُدعيت عبرها.
count
تعيد الدالةcount()
عدد عناصر المصفوفة أو المجموعة أو القاموس التي استُدعيت عبرها، مع إمكانية تمرير دالة منطقية (predicate
) كمعامل (parameter)، وحينها ستعيد عدد العناصر التي تحقق الدالة المنطقية predicate
.
distinct
تعيد الدالةdistinct()
لائحة تحتوي عناصر المصفوفة أو المجموعة التي استُدعيت عبرها بدون تكرار مع احترام ظهور تلك العناصر في المصفوفة أوالمجموعة.
distinctBy
تعيد الدالةdistinctBy()
لائحة تحتوي عناصر المصفوفة أو المجموعة التي استُدعيت عبرها والتي تختلف نتائج تطبيق الدالة (selector
) عليها، ومع احترام ظهور تلك العناصر في المصفوفة أوالمجموعة.
drop
تعيد الدالةdrop()
لائحة تحتوي جميع عناصر المصفوفة أو المجموعة التي استُدعيت عبرها باستثناء العناصر الأولى المحددة بالمعامل المُمرّر n
.
dropLast
تعيد الدالةdropLast()
لائحة تحتوي جميع عناصر المصفوفة أو المجموعة التي استُدعيت عبرها باستثناء العناصر الأخيرة المحددة بالمعامل المُمرّر n
.
dropLastWhile
تعيد الدالةdropLastWhile()
لائحة تحتوي جميع عناصر المصفوفة أو المجموعة التي استُدعيت عبرها باستثناء العناصر الأخيرة التي تحقق الشرط المنطقي predicate
المُمرّر إلى الدالة.
dropWhile
تعيد الدالةdropWhile()
لائحة تحتوي جميع عناصر المصفوفة أو المجموعة التي استُدعيت عبرها باستثناء العناصر الأولى التي تحقق الشرط المنطقيpredicate
المُمرّر إلى الدالة.
elementAt
تعيد الدالةelementAt()
العنصر الموجود عند الفهرس (index) المحدد من المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال كان ذلك الفهرس خارج حدود المصفوفة أو المجموعة فستُطلق استثناءً IndexOutOfBoundsException.
elementAtOrElse
تعيد الدالةelementAtOrElse()
العنصر الموجود عند الفهرس (index) المحدد من المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال كان ذلك الفهرس خارج حدود المصفوفة أو المجموعة فستُعيد ناتج تطبيق الدالة المُمرّرة defaultValue()
على الفهرس.
elementAtOrNull
تعيد الدالةelementAtOrNull()
العنصر الموجود عند الفهرس (index) المحدد من المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال كان ذلك الفهرس خارج حدود المصفوفة أو المجموعة فستُعيد القيمة المعدومة null
.
fill
تعيّن الدالةfill()
قيمة العناصر الموجودة في الفهارس المحددة للمصفوفة أو اللائحة التي استُدعيت عبرها وتعطيها القيمة الممررة إليها.
filter
تعيد الدالةfilter()
لائحة تحتوي عناصر المصفوفة أو المجموعة التي تحقق الشرط المنطقي predicate()
المُمرّر إلى الدالة. وفي حال استدعائها عبرقاموس فستعيد قاموسًا جديدًا مكونًا من كل الأزوج التي تحقق الشرط المنطقي predicate()
الممرر إلى الدالة، هذا القاموسالجديد يحافظ على ترتيب تكرار (entry iteration order) القاموسالأصلي.
filterIndexed
تعيد الدالةfilterIndexed()
لائحة تحتوي عناصر المصفوفة أو المجموعة التي تحقق الشرط المنطقي predicate()
المُمرّر إلى الدالة، الدالة المنطقية predicate()
تأخذ فهرس العنصر وقيمته كمعامل وتعيد قيمة منطقية.
filterIndexedTo
تضيف الدالةfilterIndexedTo()
إلى المعامل destination
الممرّر إليها عناصرّ المجموعة المتغيرة (MutableCollection
) التي استُدعيت عبرها والتي تحقق الشرط المنطقي predicate()
المُمرّر إلى الدالة، الدالة المنطقية predicate()
تأخذ فهرس العنصر وقيمته كمعاملَين وتعيد قيمة منطقية.
filterIsInstance
تعيد الدالةfilterIsInstance()
لائحة تحتوي عناصر المصفوفة أو المجموعة التي استُدعيت عبرها والتي هي نسخة (instance) من نوع (type) أوصنفٍ معيّن.
filterIsInstanceTo
تضيف الدالةfilterIsInstanceTo()
عناصر المصفوفة أو المجموعة التي استُدعيت عبرها و التي هي نسخة (instance) من نوع (type) أو صنفٍمعيّن إلى المجموعة المتغيرة destination
المُمرّرة إليها.
filterNot
تعيد الدالةfilterNot()
لائحة تحتوي عناصر المصفوفة أو المجموعة التي لا تحقق الشرط المنطقي predicate()
المُمرّر إلى الدالة. وفي حال استدعائها عبر قاموس فستعيد قاموسًا جديدًا مكونًا من كل الأزوج التي لا تحقق الشرط المنطقي predicate()
الممرر إلى الدالة، هذا القاموسالجديد يحافظ على ترتيب تكرار (entry iteration order) القاموسالأصلي.
filterNotNull
تعيد الدالةfilterNotNull()
لائحة تحتوي عناصر المصفوفة أو المجموعة غير المعدومة، أي التي تخالف قيمتها null
.
filterNotNullTo
تضيف الدالةfilterNotNullTo()
إلى المعامل destination
الممرّر إليها عناصرّ المصفوفة أو المجموعة التي استُدعيت عبرها والتي تخالف قيمتها القيمة null
. من الجدير بالذكر أنّ destination
ينبغي أن تكون مجموعة قابلة للتغيير (MutableCollection
).
filterNotTo
تضيف الدالةfilterNotTo()
إلى المعامل destination
الممرّر إليها عناصرّ المصفوفة أو المجموعة التي استُدعيت عبرها والتي لا تحقق الشرط المنطقي predicate
المُمرّر إليها. من الجدير بالذكر أنّ destination
ينبغي أن تكون مجموعة قابلة للتغيير (MutableCollection
).
في حال استدعائها عبر قاموس فستضيف كل الأزوج التي لا تحقق الشرط المنطقي predicate()
إلى القاموس destination
الممرّر إليها. ومن الجدير بالذكر أنّ destination
ينبغي أن تكون قاموسًا قابلا للتغيير (MutableMap
).
filterTo
تضيف الدالةfilterTo()
إلى المعامل destination
الممرّر إليها عناصرّ المصفوفة أو المجموعة التي استُدعيت عبرها والتي تحقق الشرط المنطقيpredicate
المُمرّر إليها. من الجدير بالذكر أنّ destination
ينبغي أن تكون مجموعة قابلة للتغيير (MutableCollection
).
في حال استدعائها عبر قاموس فستضيف كل الأزوج التي تحقق الشرط المنطقي predicate()
إلى القاموس destination
الممرّر إليها. ومن الجدير بالذكر أنّ destination
ينبغي أن تكون قاموسًا قابلا للتغيير (MutableMap
).
find
تعيد الدالةfind()
العنصر الأول من المصفوفة أو المجموعة التي استُدعيت عبرها والذي يحقق الشرط المنطقي predicate
المُمرّر إليها. وإن لم يكن هناك أي عنصر يحقق ذلك فستعيد null.
findLast
تعيد الدالةfindLast()
العنصر الأخير من المصفوفة أو المجموعة التي استُدعيت عبرها والذي يحقق الشرط المنطقي predicate
المُمرّر إليها. وإن لم يكن هناك أي عنصر يحقق ذلك فستعيد null.
first
تعيد الدالةfirst()
العنصر الأول من المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال تمرير دالة منطقية كمعامل فستعيد أول عنصر يحقق تلك الدالة.
إن كانت المصفوفة أو المجموعة التي استُدعيت الدالةfirst()
عبرها فارغة أو لم يكن هناك أي عنصر يحقق الدالة المنطقية الممررة إليها فستطلق الدالة الاستثناء NoSuchElementException
.
firstOrNull
تعيد الدالةfirstOrNull()
العنصر الأول من المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال تمرير دالة منطقية كمعامل فستعيد أول عنصر يحقق تلك الدالة.
flatMap
تعيد الدالةflatMap()
لائحة تضم ناتج تطبيق الدالة transform()
المُمرّرة إليها على عناصر المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال استدعاء الدالة flatMap()
على قاموس فستعيد لائحة تضم ناتج تطبيق الدالة transform()
على مداخل (entries) القاموس.
flatMapTo
تضيف الدالةflatMapTo()
إلى اللائحة المُتغيرة (MutableCollection
) destination
المُمرّرة إليها ناتج تطبيق الدالة transform()
على عناصر المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال استدعاء الدالة flatMapTo()
على قاموس فستضيف إلى اللائحة destination
ناتج تطبيق الدالة transform()
على مداخل (entries) القاموس.
flatten
تعيد الدالةflatten()
لائحة تحتوي جميع عناصر المصفوفات أو المجموعات التي تنتمي إلى المصفوفة أو المجموعة التي استُدعيت عبرها.
fold
يختلف سلوك الدالةfold()
حسب نوع الكائنات التي استُدعيت عبرها و نوع المعاملات (parameters) المُمرّرة إليها (انظر فقرة البنية العامة).
foldIndexed
تُراكِم الدالةfoldIndexed()
القيم بدءًا من القيمة المُمرّرة initial
وتطبّق العملية operation
من اليسار إلى اليمين على القيمة المُتراكمة الراهنة وعلى العنصر التالي من المصفوفة أو المجموعة التي استُدعيت عبرها وكذلك فهرسه. وتُعيد القيمة النهائية.
foldRight
تُراكِم الدالةfoldRight()
القيم بدءًا من القيمة المُمرّرة initial
وتطبّق العملية operation
من اليمين إلى اليسار على القيمة المُتراكمة الراهنة وعلى العنصر التالي من المصفوفة أو المجموعة التي استُدعيت عبرها. وتُعيد القيمة النهائية.
foldRightIndexed
تُراكِم الدالةfoldRightIndexed()
القيم بدءًا من القيمة المُمرّرة initial
وتطبّق العملية operation
من اليمين إلى اليسار على القيمة المُتراكمة الراهنة وعلى العنصر التالي من المصفوفة أو المجموعة التي استُدعيت عبرها وكذلك فهرسه. وتُعيد القيمة النهائية.
forEach
تُنفّد الدالةُforEach()
الدالةَ المُمرّرةَ action
على كل عناصر المصفوفة أو المجموعة أو القاموس الذي استُدعيت عبره.
forEachIndexed
تُنفّد الدالةُforEachIndexed()
الدالةَ المُمرّرةَ action
على كل عناصر المصفوفة أو المجموعة أو القاموس الذي استُدعيت عبره وعلى فهارسها (indices).
getOrElse
تعيد الدالة getOrElse()
قيمة العنصر عند الفهرس index
المُحدَّد في المصفوفة أو المجموعة التي استُدعيت عبرها. ، أو نتيجة استدعاء الدالة المُمرّرة defaultValue
إن كان الفهرس خارج الحدود.
ان استُدعيت الدالة عبر قاموس فستُعيد القيمة المقابلة للمفتاح key
المُمرّر إلى الدالة، أو نتيجة استدعاء الدالة المُمرّرة defaultValue
إن كان المفتاحkey
موجودًا.
getOrNull
تعيد الدالة getOrNull()
قيمة العنصر عند الفهرس index
المُحدَّد في المصفوفة أو المجموعة التي استُدعيت عبرها. ، أو null
إن كان الفهرس خارج الحدود.
groupBy
تعيد الدالةgroupBy()
قاموسًا يُجمّع عناصر المصفوفة أو المجموعة التي استُدعيت عبرها حيث مفاتيحه تعيدها الدالة المُمرّرة keySelector
وقيمه لوائحُ تضم عناصر المصفوفة أو المجموعة (أو ناتج تمرير عناصر المصفوفة أو المجموعة على الدالة valueTransform
في حال تمريرها).
groupByTo
تجمّع الدالةgroupByTo()
عناصر المصفوفة أو المجموعة التي استُدعيت عبرها وتضيفها إلى القاموس.المُمرّر destination
حيث مفاتيحه تعيدها الدالة الممرّرة keySelector()
مُطبّقة على كل عناصر المصفوفة أو المجموعة، وقيمُه لوائح تضم العناصر المقابلة، وفي حال تمرير معامل ثالثvalueTransform
فإنّ القيم ستكون لوائح تضم ناتج تطبيق الدالة valueTransform
على العناصر المقابلة . ثم تعيد القاموسdestination.
groupingBy
تُنشئ الدالةgroupingBy()
كائنًا من النوع Grouping
من المصفوفة أو المجموعة التي استُدعيت عبرها لاستخدامه لاحقًا مع عمليات المجموعات (group-and-fold operations)، وذلك باستخدام الدالة المُمرّرة keySelector
لاستخلاص مفتاح من كل عنصر .
indexOf
تعيد الدالة indexOf()
فهرس أول ظهور للعنصر المُمرّر إليها في المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها ، أو -1
إن كان العنصر المُمرّر غير موجود.
indexOfFirst
تعيد الدالة indexOfFirst()
فهرس أول ظهور للعنصر المُمرّر إليها في المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها والذي يحقق الشرط المنطقي المُمرّر predicate
، أو -1
إن لم يكن هناك أي عنصر يحقق ذلك.
indexOfLast
تعيد الدالة indexOfLast()
فهرس آخر ظهور للعنصر المُمرّر إليها في المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها والذي يحقق الشرط المنطقي المُمرّر predicate
، أو -1
إن لم يكن هناك أي عنصر يحقق ذلك.
intersect
تعيد الدالة intersect()
مجموعة تحتوي كل العناصر المشتركة بين المصفوفة أو المجموعة التي استُدعيت عبرها وتلك الممرّرة إلى الدالة.
isArrayOf
تتحقق الدالة isArrayOf()
من أنّ المصفوفة التي استُدعيت عبرها يمكن أن تحتوي عناصر من النوع المحدد.
isEmpty
تعيد الدالة isEmpty()
القيمة true
إن كانت المصفوفة التي استُدعيت عبرها فارغةً.
isNotEmpty
تعيد الدالة isNotEmpty()
القيمة true
إن كانت المصفوفة أو المجموعة التي استُدعيت عبرها غير فارغةً.
joinTo
تجمّع الدالةjoinTo()
سلسة نصية من عناصر المصفوفة أو المجموعة التي استُدعيت عبرها مفصولة بالمعامل المُمرّر separator
وباستخدام البادئةprefix
واللاحقة postfix
في حال تمريرهما،
joinToString
تنشئ الدالةjoinToString()
سلسة نصية من عناصر المصفوفة أو المجموعة التي استُدعيت عبرها مفصولة بالمعامل المُمرّر separator
وباستخدام البادئة prefix
واللاحقة postfix
في حال تمريرهما،
last
تعيد الدالةlast()
العنصر الأخير من المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها. في حال تمرير شرط منطقي predicate
كوسيط فستعيد العنصر الأخير الذي يحقق ذلك الشرط.
lastIndexOf
تعيد الدالةlastIndexOf()
آخر فهرس للعنصر الممرّر إلى المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها. وإن لم يكن العنصر موجودًا فستعيد -1
.
lastOrNull
تعيد الدالةlastOrNull()
العنصر الأخير من المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها. في حال تمرير شرط منطقي predicate
كوسيط فستعيد العنصر الأخير الذي يحقق ذلك الشرط.
map
تعيد الدالةmap()
لائحة تضم ناتج تطبيق الدالة transform()
المُمرّرة إليها على عناصر المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال استدعاء الدالة map()
على قاموس فستعيد لائحة تضم ناتج تطبيق الدالة transform()
على مداخل (entries) القاموس.
mapIndexed
تعيد الدالةmapIndexed()
لائحة تضم ناتج تطبيق الدالة transform()
المُمرّرة إليها على عناصر المصفوفة أو المجموعة التي استُدعيت عبرها وعلى فهارسها.
mapIndexedNotNull
تعيد الدالةmapIndexedNotNull()
لائحة تضم فقط النتائج غير المعدومة (non-null
) لتطبيق الدالة transform()
على عناصر المصفوفة أوالمجموعة التي استُدعيت عبرها وعلى فهارسها.
mapIndexedNotNullTo
تطبق الدالةmapIndexedNotNullTo()
الدالة المُمررّة transform()
على عناصر المصفوفة أو المجموعة التي استُدعيت عبرها وعلى فهارسها وتضيف فقط النتائج غير المعدومة (non-null
) إلى المعامل الممرّر destination
.
mapIndexedTo
تطبق الدالةmapIndexedTo()
الدالة المُمررّة transform()
على عناصر المصفوفة أو المجموعة التي استُدعيت عبرها وعلى فهارسها وتضيف النتائج إلى المعامل الممرّر destination
.
mapNotNull
تعيد الدالةmapNotNull()
لائحة تضم النتائج غير المعدومة (non-null) لتطبيق الدالة transform()
المُمرّرة على عناصر المصفوفة أو المجموعةالتي استُدعيت عبرها، وفي حال استدعاء الدالة mapNotNull()
على قاموس فستعيد لائحة تضم النتائج غير المعدومة (non-null) لتطبيق الدالةtransform()
على مداخل (entries) القاموس.
mapNotNullTo
تطبق الدالةmapNotNullTo()
الدالة المُمررّة transform()
على عناصر المصفوفة أو المجموعة التي استُدعيت عبرها وتضيف النتائج غير المعدومة (non-null) إلى المعامل الممرّر destination
. وفي حال استدعاء الدالة mapNotNullTo()
على قاموس فستضيف النتائج غير المعدومة (non-null) لتطبيق الدالةtransform()
على مداخل (entries) القاموس إلى المعامل الممرّر destination
.
mapTo
تطبق الدالةmapTo()
الدالة المُمررّة transform()
على عناصر المصفوفة أو المجموعة التي استُدعيت عبرها وتضيف النتائج إلى المعامل الممرّرdestination
. وفي حال استدعاء الدالة mapTo()
على قاموس فستضيف نتائج تطبيق الدالةtransform()
على مداخل (entries) القاموس إلى المعامل الممرّر destination
.
max
تعيد الدالةmax()
أكبر عنصر في المصفوفة أو المجموعة التي استُدعيت عبرها، أو null
إن كانت فارغة.
maxBy
تعيد الدالةmaxBy()
العنصر الأول في المصفوفة أو المجموعة التي استُدعيت عبره والذي له أكبر قيمة معادة من الدالة الممررة selector
، أو null
إن لم يكن هناك أي عنصر يحقق ذلك.
في حال استدعاء الدالة maxBy()
عبر قاموس فستعيد المدخل (Entry) الأول في ذلك القاموس والذي له أكبر قيمة معادة من الدالة الممررة selector
، أو null
إن لم يكن هناك أي مدخل يحقق ذلك.
maxWith
تعيد الدالةmaxWith()
العنصر الأول في المصفوفة أو المجموعة التي استُدعيت عبره والذي له أكبر قيمة بحسب المقارِن comparator
الممرّر، أو null
إن لم يكن هناك أي عنصر يحقق ذلك.
في حال استدعاء الدالة maxWith()
عبر قاموس فستعيد المدخل (Entry) الأول في ذلك القاموس والذي له أكبر قيمة حسب المقارِن comparator
، أوnull
إن لم يكن هناك أي مدخل يحقق ذلك.
min
تعيد الدالةmin()
أصغر عنصر في المصفوفة أو المجموعة التي استُدعيت عبرها، أو null
إن كانت فارغة.
minBy
تعيد الدالةminBy()
العنصر الأول في المصفوفة أو المجموعة التي استُدعيت عبره والذي له أصغر قيمة معادة من الدالة الممررة selector
، أو null
إن لم يكن هناك أي عنصر يحقق ذلك.
في حال استدعاء الدالة minBy()
عبر قاموس فستعيد المدخل (Entry) الأول في ذلك القاموس والذي له أصغر قيمة معادة من الدالة الممررة selector
، أو null
إن لم يكن هناك أي مدخل يحقق ذلك.
minWith
تعيد الدالةminWith()
العنصر الأول في المصفوفة أو المجموعة التي استُدعيت عبرها والذي له أصغر قيمة بحسب المقارِن comparator
الممرّر، أوnull
إن لم يكن هناك أي عنصر يحقق ذلك.
في حال استدعاء الدالة minWith()
عبر قاموس فستعيد المدخل (Entry) الأول في ذلك القاموس والذي له أصغر قيمة حسب المقارِن comparator
، أوnull
إن لم يكن هناك أي مدخل يحقق ذلك.
none
تعيد الدالةnone()
القيمة true
إن كانت المصفوفة أو المجموعة التي استُدعيت عبرها فارغة، أو تعيد false
. وفي حال تمرير شرط منطقيpredicate
. فستعيد true
إن لم يكن هناك أي عنصر يحقق ذلك الشرط المنطقي، أو تعيد false
.
orEmpty
تعيد الدالةorEmpty()
المصفوفة أو المجموعة أو اللائحة أو القاموس الذي استُدعيت عبره إن لم يكن يساوي null
، أو تعيد مصفوفة أو مجموعة أو لائحةأو قاموسًا فارغًا.
partition
تُقسّم الدالةُpartition()
المصفوفة أو المجموعة التي استُدعيت عبرها إلى زوج مكوّن من لائحتين، اللائحة الأولى تضم العناصر التي تحقق الشرط المنطقي المُمرّر predicate
(أي تعيد true
)، بينما تضم الثانية العناصر الأخرى.
plus
يختلف سلوك الدالة plus()
حسب نوع الكائنات التي استُدعيت عبرها ونوع الوسائط الممررة (انظر فقرة البنية العامة).
plusElement
تضيف الدالة plusElement()
العنصر المُمرّر إلى المصفوفة أو المجموعة التي استُدعيت عبرها.
reduce
يختلف سلوك الدالةreduce()
حسب نوع الكائنات التي استُدعيت عبرها ونوع المعاملات (parameters) المُمرّرة إليها (انظر فقرة البنية العامة).
reduceIndexed
تُراكِم الدالةreduceIndexed()
القيم بدءًا من العنصر الأول في المصفوفة أو المجموعة التي استُدعيت عبرها وتطبّق العملية operation
من اليسار إلى اليمين على القيمة المُتراكمة الراهنة وعلى العنصر الموالي في المصفوفة أو المجموعة التي استُدعيت عبرها وعلى فهرسه. ثم تُعيد القيمة النهائية.