الفرق بين المراجعتين لصفحة: «Kotlin/kotlin.text/partition»
< Kotlin | kotlin.text
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) مراجعة وتدقيق. |
||
(3 مراجعات متوسطة بواسطة مستخدمين اثنين آخرين غير معروضة) | |||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: الدالة <code> | <noinclude>{{DISPLAYTITLE: الدالة <code>partition()</code> في Kotlin}}</noinclude> | ||
تقسم الدالة <code>partition()</code> سلسلة المحارف التي استُدعيت معها إلى قسمين؛ الأول يضم المحارف التي تحقِّق شرطًا محدَّدًا، والثاني يضم المحارف الأخرى المتبقيَّة. | |||
==البنية العامة== | ==البنية العامة== | ||
سطر 9: | سطر 9: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
<syntaxhighlight lang="kotlin"> | |||
inline fun String.partition( | inline fun String.partition( | ||
predicate: (Char) -> Boolean | predicate: (Char) -> Boolean | ||
): Pair<String, String> | ): Pair<String, String> | ||
</syntaxhighlight> | </syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أن هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة <nowiki/>[[Kotlin/inline functions|الدوال المباشرة (inline functions)]]). | ||
== المعاملات == | |||
==القيم | === <code>predicate</code> === | ||
دالةٌ تطبق على كل محرف من محارف السلسلة المعطاة. يمرر إليها كل محرف من محارف السلسلة على حدة ثم تعيد قيمة منطقية مقابلة له. | |||
==القيم المعادة== | |||
يعاد [[Kotlin/Pair|زوجٌ]] من [[Kotlin/CharSequence|سلاسل من المحارف]] أو [[Kotlin/String|سلاسل نصية]]، إذ تضم الأولى محارف السلسلة المعطاة التي تحقِّق الشرط <code>predicate</code> المعطى (أي تعيد <code>true</code> معها)، بينما تضم الثانية المحارف الأخرى. | |||
==أمثلة== | ==أمثلة== | ||
<nowiki/><nowiki/><nowiki/>مثالٌ على استعمال الدالة <code>()partition</code><nowiki/>:<syntaxhighlight lang="kotlin"> | |||
fun main(args: Array<String>) { | fun main(args: Array<String>) { | ||
val str = "Hsoub Wiki" | val str = "Hsoub Wiki" | ||
val pair: Pair<String, String> = str.partition { it.isUpperCase() } | val pair: Pair<String, String> = str.partition { it.isUpperCase() } | ||
println(pair) // (HW, soub iki) | println(pair) // (HW, soub iki) | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر أيضًا== | ==انظر أيضًا== | ||
* <code>[[Kotlin/kotlin.text/ | * الدالة <code>[[Kotlin/kotlin.text/filter|filter()]]</code>: ترشِّح محارف <nowiki/>[[Kotlin/CharSequence/index|سلسلة المحارف]] أو السلسلة النصية المعطاة بناءً على قيمة المحرف التي تحقِّق شرطًا معيَّنًا. | ||
==مصادر== | ==مصادر== | ||
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/partition.html الدالة | *[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/partition.html الدالة partition() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin | [[تصنيف:Kotlin Function]] | ||
[[تصنيف:Kotlin Text]] |
المراجعة الحالية بتاريخ 16:54، 4 سبتمبر 2018
تقسم الدالة partition()
سلسلة المحارف التي استُدعيت معها إلى قسمين؛ الأول يضم المحارف التي تحقِّق شرطًا محدَّدًا، والثاني يضم المحارف الأخرى المتبقيَّة.
البنية العامة
inline fun CharSequence.partition(
predicate: (Char) -> Boolean
): Pair<CharSequence, CharSequence>
inline fun String.partition(
predicate: (Char) -> Boolean
): Pair<String, String>
وجود الكلمة المفتاحية inline
يدل على أن هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة الدوال المباشرة (inline functions)).
المعاملات
predicate
دالةٌ تطبق على كل محرف من محارف السلسلة المعطاة. يمرر إليها كل محرف من محارف السلسلة على حدة ثم تعيد قيمة منطقية مقابلة له.
القيم المعادة
يعاد زوجٌ من سلاسل من المحارف أو سلاسل نصية، إذ تضم الأولى محارف السلسلة المعطاة التي تحقِّق الشرط predicate
المعطى (أي تعيد true
معها)، بينما تضم الثانية المحارف الأخرى.
أمثلة
مثالٌ على استعمال الدالة ()partition
:
fun main(args: Array<String>) {
val str = "Hsoub Wiki"
val pair: Pair<String, String> = str.partition { it.isUpperCase() }
println(pair) // (HW, soub iki)
}
انظر أيضًا
- الدالة
filter()
: ترشِّح محارف سلسلة المحارف أو السلسلة النصية المعطاة بناءً على قيمة المحرف التي تحقِّق شرطًا معيَّنًا.