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

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>joinToString()‎</code> في لغة Kotlin}}</noinclude> يخت تجمّع الدالة<code>joinToString()‎</code> K...')
 
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE: الدالة <code>joinToString()‎</code> في لغة Kotlin}}</noinclude>
 
<noinclude>{{DISPLAYTITLE: الدالة <code>joinToString()‎</code> في لغة Kotlin}}</noinclude>
يخت
+
تنشئ الدالة<code>joinToString()‎</code> [[Kotlin/String|سلسة نصية]] من عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت عبرها مفصولة بالمعامل المُمرّر  <code>separator</code> وباستخدام البادئة <code>prefix</code> واللاحقة <code>postfix</code> في حال تمريرهما،
  
تجمّع الدالة<code>joinToString()‎</code> [[Kotlin/String|سلسة نصية]] من عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت عبرها مفصولة بالمعامل المُمرّر  <code>separator</code> وباستخدام البادئة <code>prefix</code> واللاحقة <code>postfix</code> في حال تمريرهما،
+
إن كانت [[Kotlin/collections|المجموعة]] كبيرة فيمكن تمرير عدد موجب <code>limit</code>، وفي تلك الحالة سيكون عدد العناصر التي تضيفها الدالة <code>joinToString()‎</code> هو <code>limit</code> إضافة إلى [[Kotlin/String|السلسلة النصية]] <code>truncated</code> التي قيمتها الابتدائية <code>"..."</code>.
 
 
إن كانت [[Kotlin/collections|المجموعة]] كبيرة فيمكن تمرير عدد موجب <code>limit</code>، وفي تلك الحالة سيكون عدد العناصر التي تضمّها الدالة <code>joinToString()‎</code> هو <code>limit</code> إضافة إلى [[Kotlin/String|السلسلة النصية]] <code>truncated</code> التي قيمتها الابتدائية <code>"..."</code>.
 
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="kotlin">
 
<syntaxhighlight lang="kotlin">
fun <T, A> Array<out T>.joinTo(
+
fun <T> Array<out T>.joinToString(
    buffer: A,
 
 
     separator: CharSequence = ", ",  
 
     separator: CharSequence = ", ",  
 
     prefix: CharSequence = "",  
 
     prefix: CharSequence = "",  
سطر 15: سطر 12:
 
     truncated: CharSequence = "...",  
 
     truncated: CharSequence = "...",  
 
     transform: (T) -> CharSequence = null
 
     transform: (T) -> CharSequence = null
): A
+
): String
fun <A> ByteArray.joinTo(
+
fun ByteArray.joinToString(
    buffer: A,
 
 
     separator: CharSequence = ", ",  
 
     separator: CharSequence = ", ",  
 
     prefix: CharSequence = "",  
 
     prefix: CharSequence = "",  
سطر 24: سطر 20:
 
     truncated: CharSequence = "...",  
 
     truncated: CharSequence = "...",  
 
     transform: (Byte) -> CharSequence = null
 
     transform: (Byte) -> CharSequence = null
): A
+
): String
fun <A> ShortArray.joinTo(
+
fun ShortArray.joinToString(
    buffer: A,
 
 
     separator: CharSequence = ", ",  
 
     separator: CharSequence = ", ",  
 
     prefix: CharSequence = "",  
 
     prefix: CharSequence = "",  
سطر 33: سطر 28:
 
     truncated: CharSequence = "...",  
 
     truncated: CharSequence = "...",  
 
     transform: (Short) -> CharSequence = null
 
     transform: (Short) -> CharSequence = null
): A
+
): String
fun <A> IntArray.joinTo(
+
fun IntArray.joinToString(
    buffer: A,
 
 
     separator: CharSequence = ", ",  
 
     separator: CharSequence = ", ",  
 
     prefix: CharSequence = "",  
 
     prefix: CharSequence = "",  
سطر 42: سطر 36:
 
     truncated: CharSequence = "...",  
 
     truncated: CharSequence = "...",  
 
     transform: (Int) -> CharSequence = null
 
     transform: (Int) -> CharSequence = null
): A
+
): String
fun <A> LongArray.joinTo(
+
fun LongArray.joinToString(
    buffer: A,
 
 
     separator: CharSequence = ", ",  
 
     separator: CharSequence = ", ",  
 
     prefix: CharSequence = "",  
 
     prefix: CharSequence = "",  
سطر 51: سطر 44:
 
     truncated: CharSequence = "...",  
 
     truncated: CharSequence = "...",  
 
     transform: (Long) -> CharSequence = null
 
     transform: (Long) -> CharSequence = null
): A
+
): String
fun <A> FloatArray.joinTo(
+
fun FloatArray.joinToString(
    buffer: A,
 
 
     separator: CharSequence = ", ",  
 
     separator: CharSequence = ", ",  
 
     prefix: CharSequence = "",  
 
     prefix: CharSequence = "",  
سطر 60: سطر 52:
 
     truncated: CharSequence = "...",  
 
     truncated: CharSequence = "...",  
 
     transform: (Float) -> CharSequence = null
 
     transform: (Float) -> CharSequence = null
): A
+
): String
fun <A> DoubleArray.joinTo(
+
fun DoubleArray.joinToString(
    buffer: A,
 
 
     separator: CharSequence = ", ",  
 
     separator: CharSequence = ", ",  
 
     prefix: CharSequence = "",  
 
     prefix: CharSequence = "",  
سطر 69: سطر 60:
 
     truncated: CharSequence = "...",  
 
     truncated: CharSequence = "...",  
 
     transform: (Double) -> CharSequence = null
 
     transform: (Double) -> CharSequence = null
): A
+
): String
fun <A> BooleanArray.joinTo(
+
fun BooleanArray.joinToString(
    buffer: A,
 
 
     separator: CharSequence = ", ",  
 
     separator: CharSequence = ", ",  
 
     prefix: CharSequence = "",  
 
     prefix: CharSequence = "",  
سطر 78: سطر 68:
 
     truncated: CharSequence = "...",  
 
     truncated: CharSequence = "...",  
 
     transform: (Boolean) -> CharSequence = null
 
     transform: (Boolean) -> CharSequence = null
): A
+
): String
fun <A> CharArray.joinTo(
+
fun CharArray.joinToString(
    buffer: A,
 
 
     separator: CharSequence = ", ",  
 
     separator: CharSequence = ", ",  
 
     prefix: CharSequence = "",  
 
     prefix: CharSequence = "",  
سطر 87: سطر 76:
 
     truncated: CharSequence = "...",  
 
     truncated: CharSequence = "...",  
 
     transform: (Char) -> CharSequence = null
 
     transform: (Char) -> CharSequence = null
): A
+
): String
fun <T, A> Iterable<T>.joinTo(
+
fun <T> Iterable<T>.joinToString(
    buffer: A,
 
 
     separator: CharSequence = ", ",  
 
     separator: CharSequence = ", ",  
 
     prefix: CharSequence = "",  
 
     prefix: CharSequence = "",  
سطر 96: سطر 84:
 
     truncated: CharSequence = "...",  
 
     truncated: CharSequence = "...",  
 
     transform: (T) -> CharSequence = null
 
     transform: (T) -> CharSequence = null
): A
+
): String
  
 
</syntaxhighlight>
 
</syntaxhighlight>
سطر 102: سطر 90:
 
[[Kotlin/String|سلسة نصية]] مكونة من عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت عبرها مفصولة بالمعامل المُمرّر  <code>separator</code> وباستخدام البادئة <code>prefix</code> واللاحقة <code>postfix</code> في حال تمريرهما،  
 
[[Kotlin/String|سلسة نصية]] مكونة من عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت عبرها مفصولة بالمعامل المُمرّر  <code>separator</code> وباستخدام البادئة <code>prefix</code> واللاحقة <code>postfix</code> في حال تمريرهما،  
  
إن كانت [[Kotlin/collections|المجموعة]] كبيرة فيمكن تمرير عدد موجب <code>limit</code>، وفي تلك الحالة سيكون عدد العناصر التي تضمّها الدالة <code>joinTo()‎</code> هو <code>limit</code> إضافة إلى [[Kotlin/String|السلسلة النصية]] <code>truncated</code> التي قيمتها الابتدائية <code>"..."</code>.
+
إن كانت [[Kotlin/collections|المجموعة]] كبيرة فيمكن تمرير عدد موجب <code>limit</code>، وفي تلك الحالة سيكون عدد العناصر التي تضمّها الدالة <code>joinToString()‎</code> هو <code>limit</code> إضافة إلى [[Kotlin/String|السلسلة النصية]] <code>truncated</code> التي قيمتها الابتدائية <code>"..."</code>.
 
==أمثلة==
 
==أمثلة==
===استخدام الدالة <code>()joinToString</code> مع اللوائح: الحالة الأولى===
+
===استخدام الدالة <code>()joinToString</code> مع اللوائح===
تعرف الشيفرة الآتية  [[Kotlin/String|سلسة نصية]]<nowiki/> باسم <code>sb</code> باستخدام الدالة <code>()StringBuilder</code>، ثم تُنشئ  [[Kotlin/collections/List|لائحة]] باسم <code>numbers</code> مكونة من ثلاثة أعداد باستخدام الدالة <code>()listOf</code>، ثم تستخدم الدالة <code>()joinToString</code> على <code>numbers</code> بتمرير <code>sb</code> وبادئة ولاحقة ، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
+
تعرّف الشيفرة الآتية  [[Kotlin/List|لائحة]]<nowiki/> باسم <code>numbers</code> باستخدام الدالة <code>()listOf</code>، ثم تستخدم الدالة <code>()joinToString</code> على <code>numbers</code> بتمرير بادئة ولاحقة وفاصلة، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
fun main(args: Array<String>) {
 
val sb = StringBuilder("An existing string and a list: ")
 
val numbers = listOf(1, 2, 3)
 
   
 
println(numbers.joinTo(sb, prefix = "[", postfix = "]").toString()) // An existing string and a list: [1, 2, 3]
 
}
 
</syntaxhighlight>
 
===استخدام الدالة <code>()joinToString</code> مع اللوائح: الحالة الثانية===
 
تعرف الشيفرة الآتية  [[Kotlin/String|سلسة نصية]] باسم <code>sb</code>  باستخدام الدالة <code>()StringBuilder</code>، ثم تُنشئ  [[Kotlin/collections/List|لائحة]] باسم <code>numbers</code> مكونة من 7أعداد باستخدام الدالة <code>()listOf</code>، ثم تستخدم الدالة <code>()joinToString</code> على <code>numbers</code> بتمرير  <code>sb</code> ومعامل <code>limit</code> ، ثم تطبع الناتج:<nowiki/><syntaxhighlight lang="kotlin">
 
 
fun main(args: Array<String>) {
 
fun main(args: Array<String>) {
val sb = StringBuilder("An existing string and a list: ")
+
val numbers = listOf(1, 2, 3, 4, 5, 6)
val numbers = listOf(1, 2, 3, 6 , 8, 9, 5)
 
 
      
 
      
println(numbers.joinTo(sb, limit = 5).toString()) // An existing string and a list: 1, 2, 3, 6, 8, ...
+
println(numbers.joinToString(prefix = "<", postfix = ">", separator = "•")) // <1•2•3•4•5•6>
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
 
==انظر أيضًا==
 
==انظر أيضًا==
<code>[[Kotlin/collections/joinToString|joinToString()]]</code>‎: تنشئ [[Kotlin/String|سلسة نصية]] من عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت عبرها مفصولة بالمعامل المُمرّر  <code>separator</code> وباستخدام البادئة <code>prefix</code> واللاحقة <code>postfix</code> في حال تمريرهما،  
+
<code>[[Kotlin/collections/joinTo|joinTo()]]</code>‎: تجمّع الدالة سلسة نصية من عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها مفصولة بالمعامل المُمرّر <code>separator</code> وباستخدام البادئة<code>prefix</code> واللاحقة <code>postfix</code> في حال تمريرهما،  
 
==مصادر==
 
==مصادر==
[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/join-to.html الدالة joinToString()‎ في التوثيق الرسمي للمكتبة القياسية في لغة Kotlin]
+
[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/join-to-string.html الدالة joinToString()‎ في التوثيق الرسمي للمكتبة القياسية في لغة Kotlin]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin Functions]]
 
[[تصنيف:Kotlin Functions]]

مراجعة 13:41، 29 مايو 2018

تنشئ الدالةjoinToString()‎ سلسة نصية من عناصر المصفوفة أو المجموعة التي استُدعيت عبرها مفصولة بالمعامل المُمرّر separator وباستخدام البادئة prefix واللاحقة postfix في حال تمريرهما،

إن كانت المجموعة كبيرة فيمكن تمرير عدد موجب limit، وفي تلك الحالة سيكون عدد العناصر التي تضيفها الدالة joinToString()‎ هو limit إضافة إلى السلسلة النصية truncated التي قيمتها الابتدائية "...".

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

fun <T> Array<out T>.joinToString(
    separator: CharSequence = ", ", 
    prefix: CharSequence = "", 
    postfix: CharSequence = "", 
    limit: Int = -1, 
    truncated: CharSequence = "...", 
    transform: (T) -> CharSequence = null
): String 
fun ByteArray.joinToString(
    separator: CharSequence = ", ", 
    prefix: CharSequence = "", 
    postfix: CharSequence = "", 
    limit: Int = -1, 
    truncated: CharSequence = "...", 
    transform: (Byte) -> CharSequence = null
): String 
fun ShortArray.joinToString(
    separator: CharSequence = ", ", 
    prefix: CharSequence = "", 
    postfix: CharSequence = "", 
    limit: Int = -1, 
    truncated: CharSequence = "...", 
    transform: (Short) -> CharSequence = null
): String 
fun IntArray.joinToString(
    separator: CharSequence = ", ", 
    prefix: CharSequence = "", 
    postfix: CharSequence = "", 
    limit: Int = -1, 
    truncated: CharSequence = "...", 
    transform: (Int) -> CharSequence = null
): String 
fun LongArray.joinToString(
    separator: CharSequence = ", ", 
    prefix: CharSequence = "", 
    postfix: CharSequence = "", 
    limit: Int = -1, 
    truncated: CharSequence = "...", 
    transform: (Long) -> CharSequence = null
): String 
fun FloatArray.joinToString(
    separator: CharSequence = ", ", 
    prefix: CharSequence = "", 
    postfix: CharSequence = "", 
    limit: Int = -1, 
    truncated: CharSequence = "...", 
    transform: (Float) -> CharSequence = null
): String 
fun DoubleArray.joinToString(
    separator: CharSequence = ", ", 
    prefix: CharSequence = "", 
    postfix: CharSequence = "", 
    limit: Int = -1, 
    truncated: CharSequence = "...", 
    transform: (Double) -> CharSequence = null
): String 
fun BooleanArray.joinToString(
    separator: CharSequence = ", ", 
    prefix: CharSequence = "", 
    postfix: CharSequence = "", 
    limit: Int = -1, 
    truncated: CharSequence = "...", 
    transform: (Boolean) -> CharSequence = null
): String 
fun CharArray.joinToString(
    separator: CharSequence = ", ", 
    prefix: CharSequence = "", 
    postfix: CharSequence = "", 
    limit: Int = -1, 
    truncated: CharSequence = "...", 
    transform: (Char) -> CharSequence = null
): String 
fun <T> Iterable<T>.joinToString(
    separator: CharSequence = ", ", 
    prefix: CharSequence = "", 
    postfix: CharSequence = "", 
    limit: Int = -1, 
    truncated: CharSequence = "...", 
    transform: (T) -> CharSequence = null
): String

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

سلسة نصية مكونة من عناصر المصفوفة أو المجموعة التي استُدعيت عبرها مفصولة بالمعامل المُمرّر separator وباستخدام البادئة prefix واللاحقة postfix في حال تمريرهما،

إن كانت المجموعة كبيرة فيمكن تمرير عدد موجب limit، وفي تلك الحالة سيكون عدد العناصر التي تضمّها الدالة joinToString()‎ هو limit إضافة إلى السلسلة النصية truncated التي قيمتها الابتدائية "...".

أمثلة

استخدام الدالة ()joinToString مع اللوائح

تعرّف الشيفرة الآتية  لائحة باسم numbers باستخدام الدالة ()listOf، ثم تستخدم الدالة ()joinToString على numbers بتمرير بادئة ولاحقة وفاصلة، ثم تطبع الناتج:

fun main(args: Array<String>) {
val numbers = listOf(1, 2, 3, 4, 5, 6)
    
println(numbers.joinToString(prefix = "<", postfix = ">", separator = "•")) // <1•2•3•4•5•6>
}

انظر أيضًا

joinTo()‎: تجمّع الدالة سلسة نصية من عناصر المصفوفة أو المجموعة التي استُدعيت عبرها مفصولة بالمعامل المُمرّر separator وباستخدام البادئةprefix واللاحقة postfix في حال تمريرهما،

مصادر

الدالة joinToString()‎ في التوثيق الرسمي للمكتبة القياسية في لغة Kotlin