الفرق بين المراجعتين لصفحة: «Kotlin/collections/fill»

من موسوعة حسوب
لا ملخص تعديل
ط مراجعة وتدقيق.
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>fill()‎</code> في لغة Kotlin}}</noinclude>
<noinclude>{{DISPLAYTITLE: الدالة <code>fill()‎</code> في لغة Kotlin}}</noinclude>
تعيّن الدالة<code>fill()‎</code> قيمة العناصر الموجودة في الفهارس المحددة  [[Kotlin/Array|للمصفوفة]] أو [[Kotlin/Array|اللائحة]] التي استُدعيت عبرها وتعطيها القيمة الممررة إليها.
تبدِّل الدالة <code>fill()‎</code> قيمة جديدة معطاة مكان عناصر محدَّدة في [[Kotlin/Array|المصفوفة]] أو [[Kotlin/List|القائمة]] التي تستدعى معها.


== البنية العامة ==
== البنية العامة ==
يمكن استدعاء الدالة<code>fill()‎</code> على [[Kotlin/Array|المصفوفات]].<syntaxhighlight lang="kotlin">
يمكن استدعاء الدالة <code>fill()‎</code> مع [[Kotlin/Array|المصفوفات]]:<syntaxhighlight lang="kotlin">
fun <T> Array<T>.fill(
fun <T> Array<T>.fill(
     element: T,  
     element: T,  
سطر 40: سطر 40:
     fromIndex: Int = 0,  
     fromIndex: Int = 0,  
     toIndex: Int = size)  
     toIndex: Int = size)  
</syntaxhighlight>يمكن استدعاء الدالة<code>fill()‎</code> على [[Kotlin/collections/List|اللوائح]].<syntaxhighlight lang="kotlin">
</syntaxhighlight>ويمكن استدعاء الدالة<code>fill()‎</code> مع [[Kotlin/collections/List|القوائم]] (بدءًا من الإصدار: Kotlin 1.2):<syntaxhighlight lang="kotlin">
inline fun <T> MutableList<T>.fill(value: T)  
inline fun <T> MutableList<T>.fill(value: T)  
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
</syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أن هذه الدالة مباشرة (لمزيد من التفاصيل، راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة]]).
 
== القيم المعادة ==
تٌعاد المصفوفة أو القائمة نفسها بعد تبديل القيمة <code>element</code> المعطاة مكان قيم العناصر الواقعة بين العنصر ذي الفهرس <code>fromIndex</code> وحتى العنصر <code>toIndex</code> (لا يدخل هذا العنصر ضمن المجال) أو آخر عنصر إن لم يعطَ قيمة هذا المعامل.
 
==أمثلة==
==أمثلة==
===استخدام الدالة <code>()fill</code> مع المصفوفات  ===
===استخدام الدالة <code>()fill</code> مع المصفوفات  ===
تعرف الشيفرة الآتية [[Kotlin/Array|مصفوفة]] باسم <code>array</code>مكونة من ستة أعداد باستخدام الدالة <code>()arrayOf</code>، ثم تستخدم الدالة <code>()fill</code> لتعيين العناصر الموجودة عند الفهارس من <code>2</code> حتى <code>4</code> في [[Kotlin/Array|المصفوفة]] وإعطائها القيمة <code>12</code>، ثم تطبع التمثيل النصي [[Kotlin/Array|للمصفوفة]] باستخادم الدالة <code>()contentToString</code> ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
تعرف الشيفرة الآتية [[Kotlin/Array|مصفوفة]] باسم <code>array</code> باستخدام الدالة <code>()arrayOf</code> ثمَّ تستخدم الدالة <code>()fill</code> لتبديل القيمة 12 مكان العنصر الثالث والرابع في هذه المصفوفة. تطبع بعدئذٍ سلسلة نصية تمثل المصفوفة الناتجة باستخادم الدالة <code>[[Kotlin/collections/contentToString|()contentToString]]</code>:<syntaxhighlight lang="kotlin">
fun main(args: Array<String>) {
fun main(args: Array<String>) {
val array = arrayOf(1,2,3,4,5,6)
val array = arrayOf(1,2,3,4,5,6)
سطر 54: سطر 58:
</syntaxhighlight>
</syntaxhighlight>
===انظر أيضًا  ===
===انظر أيضًا  ===
* <code>[[Kotlin/collections/elementAt|elementAt()]]</code>‎: تعيد العنصر الموجود عند الفهرس (index) المحدد  من  [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] التي استُدعيت عبرها، وفي حال كان ذلك الفهرس خارج حدود [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] فستُطلق <nowiki/>[[Kotlin/exceptions|استثناءً]]  [https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-index-out-of-bounds-exception/index.html IndexOutOfBoundsException].
* الدالة <code>[[Kotlin/collections/drop|drop()]]</code>‎: تعيد قائمة تحوي جميع عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/Array|المجموعة]] التي استُدعيت معها باستثناء آخر <code>n</code> عنصر.
* الدالة <code>[[Kotlin/collections/distinct|distinct()‎]]</code>: تحذف العناصر المتكررة الموجودة في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت معها وتعيد الناتج في قائمة.
* الدالة <code>[[Kotlin/collections/elementAt|elementAt()]]</code>‎: تجلب عنصرًا ذي فهرس معيَّن من <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت معها.
* الدالة <code>[[Kotlin/collections/filter|filter()‎]]</code>: ترشِّح عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو أزواج الخرائط المعطاة التي تحقِّق شرطًا معيَّنًا ثمّ تعيدها.


==مصادر==
==مصادر==
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/fill.html الدالة  fill()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/fill.html الدالة fill()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Functions]]
[[تصنيف:Kotlin Functions]]

مراجعة 14:19، 4 يوليو 2018

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

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

يمكن استدعاء الدالة fill()‎ مع المصفوفات:

fun <T> Array<T>.fill(
    element: T, 
    fromIndex: Int = 0, 
    toIndex: Int = size) 
fun ByteArray.fill(
    element: Byte, 
    fromIndex: Int = 0, 
    toIndex: Int = size) 
fun ShortArray.fill(
    element: Short, 
    fromIndex: Int = 0, 
    toIndex: Int = size) 
fun IntArray.fill(
    element: Int, 
    fromIndex: Int = 0, 
    toIndex: Int = size) 
fun LongArray.fill(
    element: Long, 
    fromIndex: Int = 0, 
    toIndex: Int = size) 
fun FloatArray.fill(
    element: Float, 
    fromIndex: Int = 0, 
    toIndex: Int = size) 
fun DoubleArray.fill(
    element: Double, 
    fromIndex: Int = 0, 
    toIndex: Int = size) 
fun BooleanArray.fill(
    element: Boolean, 
    fromIndex: Int = 0, 
    toIndex: Int = size)
fun CharArray.fill(
    element: Char, 
    fromIndex: Int = 0, 
    toIndex: Int = size)

ويمكن استدعاء الدالةfill()‎ مع القوائم (بدءًا من الإصدار: Kotlin 1.2):

inline fun <T> MutableList<T>.fill(value: T)

وجود الكلمة المفتاحية inline يدل على أن هذه الدالة مباشرة (لمزيد من التفاصيل، راجع توثيق الدوال المباشرة).

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

تٌعاد المصفوفة أو القائمة نفسها بعد تبديل القيمة element المعطاة مكان قيم العناصر الواقعة بين العنصر ذي الفهرس fromIndex وحتى العنصر toIndex (لا يدخل هذا العنصر ضمن المجال) أو آخر عنصر إن لم يعطَ قيمة هذا المعامل.

أمثلة

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

تعرف الشيفرة الآتية مصفوفة باسم array باستخدام الدالة ()arrayOf ثمَّ تستخدم الدالة ()fill لتبديل القيمة 12 مكان العنصر الثالث والرابع في هذه المصفوفة. تطبع بعدئذٍ سلسلة نصية تمثل المصفوفة الناتجة باستخادم الدالة ()contentToString:

fun main(args: Array<String>) {
val array = arrayOf(1,2,3,4,5,6)
array.fill(12,2,4)

println(array.contentToString()) // [1, 2, 12, 12, 5, 6]
}

انظر أيضًا

مصادر