الفرق بين المراجعتين ل"Kotlin/collections/count"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>count()‎</code> في لغة Kotlin}}</noinclude> تعيد الدالة<code>count()‎</code>تمثيلًا نصيًا ل...')
 
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE: الدالة <code>count()‎</code> في لغة Kotlin}}</noinclude>
 
<noinclude>{{DISPLAYTITLE: الدالة <code>count()‎</code> في لغة Kotlin}}</noinclude>
تعيد الدالة<code>count()‎</code>تمثيلًا نصيًا لمحتوى [[Kotlin/Array|المصفوفة]] التي استُدعيت عبرها كما لو كانت [[Kotlin/List|لائحة]].   
+
تعيد الدالة<code>count()‎</code>عدد عناصر  [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] أو [[Kotlin/Array|القاموس]] التي استُدعيت عبرها، مع إمكانية تمرير دالة منطقية (<code>predicate</code>)  كمعامل (parameter)، وحينها ستعيد عدد العناصر التي تحقق الدالة المنطقية <code>predicate</code>.   
  
 
==البنية العامة==
 
==البنية العامة==
<syntaxhighlight lang="kotlin">
+
في حال استدعاء الدالة <code>count()‎</code> عبر  [[Kotlin/Array|مصفوفة]] دون تمرير أي معامل (parameter) فستعيد عدد عناصر تلك [[Kotlin/Array|المصفوفة]].<syntaxhighlight lang="kotlin">
inline fun <T> Array<out T>.contentToString(): String
+
inline fun <T> Array<out T>.count(): Int
inline fun ByteArray.contentToString(): String
+
inline fun ByteArray.count(): Int
inline fun ShortArray.contentToString(): String
+
inline fun ShortArray.count(): Int
inline fun IntArray.contentToString(): String
+
inline fun IntArray.count(): Int
inline fun LongArray.contentToString(): String
+
inline fun LongArray.count(): Int
inline fun FloatArray.contentToString(): String
+
inline fun FloatArray.count(): Int
inline fun DoubleArray.contentToString(): String
+
inline fun DoubleArray.count(): Int
inline fun BooleanArray.contentToString(): String
+
inline fun BooleanArray.count(): Int
inline fun CharArray.contentToString(): String
+
inline fun CharArray.count(): Int
 
 
 
</syntaxhighlight>
 
</syntaxhighlight>
  
<u>'''الإصدار المطلوب: Kotlin 1.1'''</u>
+
في حال استدعاء الدالة <code>count()‎</code>  مع تمرير دالة منطقية (<code>predicate</code>)  كمعامل (parameter) فستعيد عدد العناصر التي تحقق الدالة المنطقية <code>predicate</code>.<syntaxhighlight lang="kotlin">
 +
inline fun <T> Array<out T>.count(
 +
    predicate: (T) -> Boolean
 +
): Int
 +
inline fun ByteArray.count(predicate: (Byte) -> Boolean): Int (source)
 +
inline fun ShortArray.count(
 +
    predicate: (Short) -> Boolean
 +
): Int
 +
inline fun IntArray.count(predicate: (Int) -> Boolean): Int (source)
 +
inline fun LongArray.count(predicate: (Long) -> Boolean): Int (source)
 +
inline fun FloatArray.count(
 +
    predicate: (Float) -> Boolean
 +
): Int
 +
inline fun DoubleArray.count(
 +
    predicate: (Double) -> Boolean
 +
): Int
 +
inline fun BooleanArray.count(
 +
    predicate: (Boolean) -> Boolean
 +
): Int
 +
inline fun CharArray.count(predicate: (Char) -> Boolean): Int (source)
 +
inline fun <T> Iterable<T>.count(
 +
    predicate: (T) -> Boolean
 +
): Int
 +
</syntaxhighlight>في حال استدعاء الدالة <code>count()‎</code> عبر  [[Kotlin/collections|مجموعة]] دون تمرير أي معامل (parameter) فستعيد عدد عناصر تلك [[Kotlin/Array|المجموعة]].<syntaxhighlight lang="kotlin">
 +
fun <T> Iterable<T>.count(): Int
 +
inline fun <T> Collection<T>.count(): Int
 +
</syntaxhighlight>في حال استدعاء الدالة <code>count()‎</code> عبر  [[Kotlin/Map|قاموس]] دون تمرير أي معامل (parameter) فستعيد عدد عناصر ذلك [[Kotlin/Array|القاموس]].<syntaxhighlight lang="kotlin">
 +
inline fun <K, V> Map<out K, V>.count(): Int
 +
</syntaxhighlight>في حال استدعاء الدالة <code>count()‎</code> عبر  [[Kotlin/Map|قاموس]] مع تمرير دالة منطقية (<code>predicate</code>)  كمعامل (parameter) فستعيد عدد المداخل (entries) التي تحقق الدالة المنطقية <code>predicate</code>.
  
 
يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
 
يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
  
 
== القيم المعادة ==
 
== القيم المعادة ==
تمثيل نصي ([[Kotlin/String|String]]) لمحتوى [[Kotlin/Array|المصفوفة]] التي استُدعيت عبرها كما لو كانت [[Kotlin/List|لائحة]].
+
عدد عناصر  [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] أو [[Kotlin/Array|القاموس]] التي استُدعيت عبرها، مع إمكانية تمرير دالة منطقية (<code>predicate</code>)  كمعامل (parameter)، وحينها ستعيد عدد العناصر التي تحقق الدالة المنطقية <code>predicate</code>.
 
==أمثلة==
 
==أمثلة==
 
===استخدام الدالة <code>()count</code> مع المصفوفات  ===
 
===استخدام الدالة <code>()count</code> مع المصفوفات  ===
تعرف الشيفرة الآتية [[Kotlin/Array|مصفوفة]] باسم <code>array</code>مكونة من ثلاث سلاسل نصية باستخدام الدالة <code>()arrayOf</code>، ثم تستخدم الدالة <code>()count</code> للحصول على تمثيل نصي [[Kotlin/Array|للمصفوفة]] ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
+
تعرف الشيفرة الآتية [[Kotlin/Array|مصفوفة]] باسم <code>array</code>مكونة من أربعة أعداد باستخدام الدالة <code>()arrayOf</code>، ثم تستخدم الدالة <code>()count</code> للحصول على عدد عناصر تلك [[Kotlin/Array|المصفوفة]] ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
fun main(args: Array<String>) {
+
fun main(args: Array<String>) {
val array = arrayOf("apples", "oranges", "lime")
+
val array = arrayOf(1,2,3,4)
 
+
println(array.count()) // 4
println(array.contentToString()) // [apples, oranges, lime]
+
}
 +
</syntaxhighlight>
 +
===ستخدام الدالة <code>()count</code> مع المصفوفات مع تمرير دالة منطقية كمعامل  ===
 +
تعرف الشيفرة الآتية [[Kotlin/Array|مصفوفة]] باسم <code>array</code>مكونة من أربعة أعداد باستخدام الدالة <code>()arrayOf</code>، ثم تستخدم الدالة <code>()count</code> للحصول على عدد عناصر تلك [[Kotlin/Array|المصفوفة]] الأصغر من <code>3</code> عبر تمرير الدالة المنطقية <code>predicate</code> ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
 +
fun main(args: Array<String>) {
 +
val array = arrayOf(1,2,3,4)
 +
val predicate: (Int) -> Boolean = { it < 3}
 +
println(array.count(predicate)) // 2
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
 
==انظر أيضًا==
 
==انظر أيضًا==
* <code>contentDeepToString()</code>‎: تعيد تمثيلًا نصيًا استنادًا إلى محتوى <nowiki/>[[Kotlin/Array|المصفوفة]] التي استُدعيت عبرها كما لو كانت لائحة، <nowiki/>[[Kotlin/Array|المصفوفات]] المُتشعبة تعامل كاللوائح هي كذلك.
+
* صفحة [[Kotlin/Array|المصفوفات]] (Arrays).
 
+
* صفحة [[Kotlin/Array|المجموعات]] (Collections)
*<code>[[Kotlin/collections/contentHashCode|contentHashCode()]]</code>‎: تعيد التكويد (hash code) استنادًا إلى محتوى [[Kotlin/Array|المصفوفة]] التي استُدعيت عبرها كما لو كانت [[Kotlin/List|لائحة]].
 
  
 
==مصادر==
 
==مصادر==
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/content-to-string.html الدالة  count()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
+
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/count.html الدالة  count()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin Functions]]
 
[[تصنيف:Kotlin Functions]]

مراجعة 15:11، 13 مايو 2018

تعيد الدالةcount()‎عدد عناصر المصفوفة أو المجموعة أو القاموس التي استُدعيت عبرها، مع إمكانية تمرير دالة منطقية (predicate) كمعامل (parameter)، وحينها ستعيد عدد العناصر التي تحقق الدالة المنطقية predicate.

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

في حال استدعاء الدالة count()‎ عبر مصفوفة دون تمرير أي معامل (parameter) فستعيد عدد عناصر تلك المصفوفة.

inline fun <T> Array<out T>.count(): Int 
inline fun ByteArray.count(): Int 
inline fun ShortArray.count(): Int 
inline fun IntArray.count(): Int 
inline fun LongArray.count(): Int 
inline fun FloatArray.count(): Int 
inline fun DoubleArray.count(): Int 
inline fun BooleanArray.count(): Int 
inline fun CharArray.count(): Int

في حال استدعاء الدالة count()‎  مع تمرير دالة منطقية (predicate) كمعامل (parameter) فستعيد عدد العناصر التي تحقق الدالة المنطقية predicate.

inline fun <T> Array<out T>.count(
    predicate: (T) -> Boolean
): Int 
inline fun ByteArray.count(predicate: (Byte) -> Boolean): Int (source)
inline fun ShortArray.count(
    predicate: (Short) -> Boolean
): Int 
inline fun IntArray.count(predicate: (Int) -> Boolean): Int (source)
inline fun LongArray.count(predicate: (Long) -> Boolean): Int (source)
inline fun FloatArray.count(
    predicate: (Float) -> Boolean
): Int 
inline fun DoubleArray.count(
    predicate: (Double) -> Boolean
): Int 
inline fun BooleanArray.count(
    predicate: (Boolean) -> Boolean
): Int
inline fun CharArray.count(predicate: (Char) -> Boolean): Int (source)
inline fun <T> Iterable<T>.count(
    predicate: (T) -> Boolean
): Int

في حال استدعاء الدالة count()‎ عبر مجموعة دون تمرير أي معامل (parameter) فستعيد عدد عناصر تلك المجموعة.

fun <T> Iterable<T>.count(): Int 
inline fun <T> Collection<T>.count(): Int

في حال استدعاء الدالة count()‎ عبر قاموس دون تمرير أي معامل (parameter) فستعيد عدد عناصر ذلك القاموس.

inline fun <K, V> Map<out K, V>.count(): Int

في حال استدعاء الدالة count()‎ عبر قاموس مع تمرير دالة منطقية (predicate) كمعامل (parameter) فستعيد عدد المداخل (entries) التي تحقق الدالة المنطقية predicate.

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

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

عدد عناصر المصفوفة أو المجموعة أو القاموس التي استُدعيت عبرها، مع إمكانية تمرير دالة منطقية (predicate) كمعامل (parameter)، وحينها ستعيد عدد العناصر التي تحقق الدالة المنطقية predicate.

أمثلة

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

تعرف الشيفرة الآتية مصفوفة باسم arrayمكونة من أربعة أعداد باستخدام الدالة ()arrayOf، ثم تستخدم الدالة ()count للحصول على عدد عناصر تلك المصفوفة ثم تطبع الناتج:

 fun main(args: Array<String>) {
val array = arrayOf(1,2,3,4)
println(array.count()) // 4
}

ستخدام الدالة ()count مع المصفوفات مع تمرير دالة منطقية كمعامل

تعرف الشيفرة الآتية مصفوفة باسم arrayمكونة من أربعة أعداد باستخدام الدالة ()arrayOf، ثم تستخدم الدالة ()count للحصول على عدد عناصر تلك المصفوفة الأصغر من 3 عبر تمرير الدالة المنطقية predicate ثم تطبع الناتج:

 fun main(args: Array<String>) {
val array = arrayOf(1,2,3,4)
val predicate: (Int) -> Boolean = { it < 3}
println(array.count(predicate)) // 2
}

انظر أيضًا

مصادر