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

من موسوعة حسوب
لا ملخص تعديل
طلا ملخص تعديل
 
(4 مراجعات متوسطة بواسطة مستخدمين اثنين آخرين غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>orEmpty()‎</code> في لغة Kotlin}}</noinclude>
<noinclude>{{DISPLAYTITLE: الدالة <code>orEmpty()‎</code> في Kotlin}}</noinclude>
تعيد الدالة<code>orEmpty()‎</code>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو [[Kotlin/List|اللائحة]] أو [[Kotlin/Map|القاموس]] الذي استُدعيت عبره إن لم يكن يساوي <code>null</code>، أو تعيد [[Kotlin/Array|مصفوفة]] أو <nowiki/>[[Kotlin/collections|مجموعة]] أو [[Kotlin/List|لائحة]] أو [[Kotlin/Map|قاموسًا]] فارغًا.
<nowiki/><nowiki/>تعيد الدالة <code>orEmpty()‎</code> المصفوفة أو المجموعة أو القائمة أو الخريطة التي استُدعيت معها إن لم تكن مساويةً للقيمة <code>null</code>، أو تعيد كائنًا فارغًا يقابل الكائن المعطى (مصفوفة فارغة، أو مجموعة فارغة ...إلخ.) خلاف ذلك.
==البنية العامة==
==البنية العامة==
يمكن استدعاء الدالة <code>orEmpty()‎</code> عبر  '''[[Kotlin/Array|المصفوفات]]:'''<syntaxhighlight lang="kotlin">
يمكن استدعاء الدالة <code>orEmpty()‎</code> مع [[Kotlin/Array|المصفوفات]] و<nowiki/>[[Kotlin/collections|المجموعات]] و<nowiki/>[[Kotlin/List|القوائم]] والخرائط والمجموعات التي من النوع <code>[[Kotlin/Set|Set]]</code>:<syntaxhighlight lang="kotlin">
inline fun <reified T> Array<out T>?.orEmpty(): Array<out T>  
inline fun <reified T> Array<out T>?.orEmpty(): Array<out T>  


</syntaxhighlight>يمكن استدعاء الدالة <code>orEmpty()‎</code> عبر  [[Kotlin/collections|المجموعات]]''':'''
<syntaxhighlight lang="kotlin">
inline fun <T> Collection<T>?.orEmpty(): Collection<T>  
inline fun <T> Collection<T>?.orEmpty(): Collection<T>  


</syntaxhighlight>يمكن استدعاء الدالة <code>orEmpty()‎</code> عبر  [[Kotlin/List|اللوائح]]''':'''
<syntaxhighlight lang="kotlin">
inline fun <T> List<T>?.orEmpty(): List<T>  
inline fun <T> List<T>?.orEmpty(): List<T>  


</syntaxhighlight>يمكن استدعاء الدالة <code>orEmpty()‎</code> عبر  '''[[Kotlin/Map|القواميس]]:'''<syntaxhighlight lang="kotlin">
inline fun <K, V> Map<K, V>?.orEmpty(): Map<K, V> (source)
inline fun <K, V> Map<K, V>?.orEmpty(): Map<K, V> (source)


</syntaxhighlight>يمكن استدعاء الدالة <code>orEmpty()‎</code> عبر  المجموعات من النوع <code>[[Kotlin/Set|Set]]</code>''':'''<syntaxhighlight lang="kotlin">
inline fun <K, V> Map<K, V>?.orEmpty(): Map<K, V> (source)
inline fun <K, V> Map<K, V>?.orEmpty(): Map<K, V> (source)


</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
</syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة [[Kotlin/inline functions|الدوال المباشرة (inline functions)]]).
==القيم المٌعادة==
==القيم المعادة==
[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو [[Kotlin/List|اللائحة]] أو [[Kotlin/Map|القاموس]] الذي استُدعيت عبره إن لم يكن يساوي <code>null</code>، أو تعيد  [[Kotlin/Array|مصفوفة]] أو <nowiki/>[[Kotlin/collections|مجموعة]] أو [[Kotlin/List|لائحة]] أو [[Kotlin/Map|قاموسًا]] فارغًا.
تُعاد المصفوفة أو المجموعة أو القائمة أو الخريطة المعطاة إن لم تكن مساويةً للقيمة <code>null</code>، أو يُعاد كائن فارغ يقابل الكائن المعطى (مصفوفة فارغة، أو مجموعة فارغة ...إلخ.) خلاف ذلك.
==أمثلة==
==أمثلة==
===استخدام الدالة <code>()orEmpty</code> مع المصفوفات===
التأكد من عدم تساوي المصفوفة مع القيمة <code>null</code>:<syntaxhighlight lang="kotlin">
تعرف الشيفرة الآتية  عنصرًا من النوع <code>Array<Any>?</code>‎ باسم <code>nullArray</code><nowiki/>، وتعطيه القيمة <code>null</code>، ثم تستدعي الدالة <code>()orEmpty</code>  عبر <code>nullArray</code>، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
fun main(args: Array<String>) {
fun main(args: Array<String>) {
val nullArray: Array<Any>? = null
    val array1: Array<Any>? = null
      
     val array2: Array<Char>? = arrayOf('a', 'b', 'c')
println(nullArray.orEmpty().contentToString()) // []
 
    println(array1.orEmpty().contentToString()) // []
    println(array2.orEmpty().contentToString()) // [a, b, c]
}
}
</syntaxhighlight>
</syntaxhighlight>
===استخدام الدالة <code>()orEmpty</code> مع المصفوفات===
==انظر أيضًا==
تعرف الشيفرة الآتية  <nowiki/>[[Kotlin/Array|مصفوفة]] باسم <code>array</code>مكونة من ثلاثة حروف باستخدام الدالة <code>()arrayOf</code>، ثم تستدعي الدالة <code>()orEmpty</code> عبر <code>array</code> ، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
*الدالة <code>[[Kotlin/collections/none|none()]]</code>‎: تتحقق إن كانت [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو الخريطة التي استدعيت معها فارغةً، أو إن لم يكن هنالك أي عنصر من تلك العناصر محقِّقًا لشرط معين.
fun main(args: Array<String>) {
* الدالة <code>[[Kotlin/collections/isNotEmpty|isNotEmpty()]]‎</code>: تعيد القيمة <code>true</code> إن كانت <nowiki/>[[Kotlin/Array|المصفوفة]] التي استُدعيت عبرها غير فارغةً.
val array: Array<Char>? = arrayOf('a', 'b', 'c')
* الدالة <code>[[Kotlin/jvm/isArrayOf|isArrayOf()]]</code>: تتحقق من حواية <nowiki/>[[Kotlin/Array|المصفوفة]] التي استُدعيت معها عناصرَ من نوعٍ محدَّد.
   
* الخاصية <code>[[Kotlin/Array/size|‎‎Array.size]]</code>: تعبِّر عن عدد العناصر الموجودة في المصفوفة.
println(array.orEmpty().contentToString()) // [a, b, c]
}
</syntaxhighlight>
 
== أنظر أيضًا ==
* <code>[[Kotlin/collections/none|none()]]</code>: تعيد القيمة <code>true</code> إن كانت [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت عبرها فارغة، أو تعيد <code>false</code>. وفي حال تمرير  شرط منطقي <code>predicate</code>. فستعيد <code>true</code> إن لم يكن هناك  أي عنصر يحقق ذلك الشرط المنطقي،  أو تعيد <code>false</code>.


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

المراجعة الحالية بتاريخ 09:29، 8 سبتمبر 2018

تعيد الدالة orEmpty()‎ المصفوفة أو المجموعة أو القائمة أو الخريطة التي استُدعيت معها إن لم تكن مساويةً للقيمة null، أو تعيد كائنًا فارغًا يقابل الكائن المعطى (مصفوفة فارغة، أو مجموعة فارغة ...إلخ.) خلاف ذلك.

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

يمكن استدعاء الدالة orEmpty()‎ مع المصفوفات والمجموعات والقوائم والخرائط والمجموعات التي من النوع Set:

inline fun <reified T> Array<out T>?.orEmpty(): Array<out T> 

inline fun <T> Collection<T>?.orEmpty(): Collection<T> 

inline fun <T> List<T>?.orEmpty(): List<T> 

inline fun <K, V> Map<K, V>?.orEmpty(): Map<K, V> (source)

inline fun <K, V> Map<K, V>?.orEmpty(): Map<K, V> (source)

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

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

تُعاد المصفوفة أو المجموعة أو القائمة أو الخريطة المعطاة إن لم تكن مساويةً للقيمة null، أو يُعاد كائن فارغ يقابل الكائن المعطى (مصفوفة فارغة، أو مجموعة فارغة ...إلخ.) خلاف ذلك.

أمثلة

التأكد من عدم تساوي المصفوفة مع القيمة null:

fun main(args: Array<String>) {
    val array1: Array<Any>? = null
    val array2: Array<Char>? = arrayOf('a', 'b', 'c')

    println(array1.orEmpty().contentToString()) // []
    println(array2.orEmpty().contentToString()) // [a, b, c]
}

انظر أيضًا

  • الدالة none()‎: تتحقق إن كانت المصفوفة أو المجموعة أو الخريطة التي استدعيت معها فارغةً، أو إن لم يكن هنالك أي عنصر من تلك العناصر محقِّقًا لشرط معين.
  • الدالة isNotEmpty(): تعيد القيمة true إن كانت المصفوفة التي استُدعيت عبرها غير فارغةً.
  • الدالة isArrayOf()‎: تتحقق من حواية المصفوفة التي استُدعيت معها عناصرَ من نوعٍ محدَّد.
  • الخاصية ‎‎Array.size: تعبِّر عن عدد العناصر الموجودة في المصفوفة.

مصادر