الفرق بين المراجعتين ل"Kotlin/kotlin.text/format"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>text.format()‎</code> في لغة Kotlin}}</noinclude> تُراكِم الدالة<code>format()‎</code> القيم ب...')
 
(مراجعة وتدقيق.)
 
(4 مراجعات متوسطة بواسطة مستخدمين اثنين آخرين غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>text.format()‎</code> في لغة Kotlin}}</noinclude>
+
<noinclude>{{DISPLAYTITLE: الدالة <code>String.format()‎</code> في Kotlin}}</noinclude>
تُراكِم الدالة<code>format()‎</code> القيم بدءًا من القيمة المُمرّرة <code>initial</code> وتطبّق العملية <code>operation</code> من اليمين إلى اليسار على القيمة الراهنة وعلى الحرف الموالي في  [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استُدعيت عبرها. ثم تُعيد القيمة النهائية.   
+
تنسِّق الدالة <code>format()‎</code> سلسلة نصية وفقًا لقيمة المعاملات التي تمرر إليها.   
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="kotlin">
 
<syntaxhighlight lang="kotlin">
inline fun <R> CharSequence.foldRight(
+
inline fun String.format(vararg args: Any?): String
     initial: R,  
+
 
     operation: (Char, acc: R) -> R
+
</syntaxhighlight>'''بيئة التشغيل المطلوبة''': JVM.
): R
+
 
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
+
تستعمل <code>format()‎</code> <nowiki/>[[Kotlin/String|السلسلة النصية]] التي استُدعيت معها كسلسلة تنسيق نصية (format string) وتعيد [[Kotlin/String|سلسلة نصية]] ناتجة عن تعويض الوسائط <code>args</code> المعطاة وباستخدام الإعدادات الافتراضية للمحلية (locale). <syntaxhighlight lang="kotlin">
 +
inline fun String.Companion.format(
 +
     format: String,  
 +
     vararg args: Any?
 +
): String
 +
</syntaxhighlight>'''بيئة التشغيل المطلوبة''': JVM.
 +
 
 +
تستعمل الدالة <code>format()‎</code> <nowiki/>[[Kotlin/String|السلسلة النصية]] <code>format</code> المُمرّرة كسلسلة تنسيق نصية وتعيد [[Kotlin/String|سلسلة نصية]] ناتجة عن تعويض الوسائط <code>args</code> المعطاة وباستخدام الإعدادات الافتراضية للمحلية (locale). <syntaxhighlight lang="kotlin">
 +
inline fun String.format(
 +
    locale: Locale,  
 +
    vararg args: Any?
 +
): String
 +
</syntaxhighlight>'''بيئة التشغيل المطلوبة''': JVM.
 +
 
 +
تستعمل الدالة <code>format()‎</code> <nowiki/>[[Kotlin/String|السلسلة النصية]] التي استُدعيت معها كسلسلة تنسيق نصية وتعيد [[Kotlin/String|سلسلة نصية]] ناتجة عن تعويض الوسائط <code>args</code> المعطاة وباستخدام الإعدادات <code>locale</code> الممررة للمحلية (locale). <syntaxhighlight lang="kotlin">
 +
inline fun String.Companion.format(
 +
    locale: Locale,
 +
    format: String,
 +
    vararg args: Any?
 +
): String
 +
</syntaxhighlight>'''بيئة التشغيل المطلوبة''': JVM.
 +
 
 +
تستعمل الدالة <code>format()‎</code> <nowiki/>[[Kotlin/String|السلسلة النصية]] <code>format</code> الممررة كسلسلة تنسيق نصية وتعيد [[Kotlin/String|سلسلة نصية]] ناتجة عن تعويض الوسائط <code>args</code> المعطاة وباستخدام الإعدادات <code>locale</code> الممررة للمحلية (locale).
 +
 
 +
يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
 +
 
 +
== المعاملات ==
 +
 
 +
=== <code>args</code> ===
 +
الوسائط المراد استعمالها في علمية التنسيق.
 +
 
 +
=== <code>format</code> ===
 +
سلسلة التنسيق النصية.
 +
 
 +
=== <code>locale</code> ===
 +
إعدادات المحلية المراد استعمالها في عملية التنسيق.
  
 
==القيم المعادة==
 
==القيم المعادة==
القيمة النهائية لتطبيق العملية <code>operation</code>بشكل تراكمي على عناصر [[Kotlin/CharSequence/index|سلسلة الحروف]].
+
تعاد [[Kotlin/String|سلسلة نصية]].
  
 
==أمثلة==
 
==أمثلة==
===استخدام الدالة <code>()format</code> مع سلسلة نصية===
+
مثالٌ على استعمال الدالة <code>()format</code><nowiki/>:<syntaxhighlight lang="kotlin">
تعرِّف الشيفرة الآتية  [[Kotlin/String|سلسلة نصية]] باسم <code>str</code>، ثمَّ تستدعي الدالة  <code>()format</code> عبرها مع تمرير القيمة الابتدائية <code>'A'</code> ودالة كوسيطين وتحيل القيمة الناتجة إلى المتغير <code>max</code>، <nowiki/>ثمَّ تطبع الناتج:<syntaxhighlight lang="kotlin">
 
 
fun main(args: Array<String>) {
 
fun main(args: Array<String>) {
val str = "hsoub wiki"
+
    var formatTemplate = "%-2s\t%s"
      
+
 
val max = str.foldRight('A') { max, element -> if (max > element) max else element }
+
     println(formatTemplate.format("%b", "hsoub")) // %b hsoub
print(max) // w
 
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
==انظر أيضًا==
 
* <code>[[Kotlin/kotlin.text/foldIndexed|foldIndexed()]]‎</code>: تُراكِم الدالة<code>foldIndexed()‎</code> القيم بدءًا من القيمة المُمرّرة <code>initial</code> وتطبّق العملية <code>operation</code> من اليسار إلى اليمين على القيمة الراهنة وعلى الحرف الموالي في  [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استُدعيت عبرها  وكذلك فهرسه. ثم تُعيد القيمة النهائية. 
 
 
* <code>[[Kotlin/kotlin.text/fold|fold()]]‎</code>: تُراكِم الدالة<code>fold()‎</code> القيم بدءًا من القيمة المُمرّرة <code>initial</code> وتطبّق العملية <code>operation</code> من اليسار إلى اليمين على القيمة الراهنة وعلى الحرف الموالي في  سلسلة الحروف التي استُدعيت عبرها. ثم تُعيد القيمة النهائية. 
 
 
* <code>[[Kotlin/kotlin.text/elementAt|elementAt()]]‎</code>: تعيد الحرف الموجود في الفهرس المُحدّد في سلسلة الحروف التي استُدعيت عبرها، في حال كان الفهرس خارج الحدود فستطلق الاستثناء <code>IndexOutOfBoundsException</code>. 
 
 
 
==مصادر==
 
==مصادر==
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/fold-right.html الدالة text.format()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
+
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/format.html صفحة الدالة String.format()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Functions]]
+
[[تصنيف:Kotlin Function]]
 +
[[تصنيف:Kotlin Text]]
 +
[[تصنيف:Kotlin String]]

المراجعة الحالية بتاريخ 13:18، 3 سبتمبر 2018

تنسِّق الدالة format()‎ سلسلة نصية وفقًا لقيمة المعاملات التي تمرر إليها.

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

inline fun String.format(vararg args: Any?): String

بيئة التشغيل المطلوبة: JVM. تستعمل format()‎ السلسلة النصية التي استُدعيت معها كسلسلة تنسيق نصية (format string) وتعيد سلسلة نصية ناتجة عن تعويض الوسائط args المعطاة وباستخدام الإعدادات الافتراضية للمحلية (locale).

inline fun String.Companion.format(
    format: String, 
    vararg args: Any?
): String

بيئة التشغيل المطلوبة: JVM. تستعمل الدالة format()‎ السلسلة النصية format المُمرّرة كسلسلة تنسيق نصية وتعيد سلسلة نصية ناتجة عن تعويض الوسائط args المعطاة وباستخدام الإعدادات الافتراضية للمحلية (locale).

inline fun String.format(
    locale: Locale, 
    vararg args: Any?
): String

بيئة التشغيل المطلوبة: JVM. تستعمل الدالة format()‎ السلسلة النصية التي استُدعيت معها كسلسلة تنسيق نصية وتعيد سلسلة نصية ناتجة عن تعويض الوسائط args المعطاة وباستخدام الإعدادات locale الممررة للمحلية (locale).

inline fun String.Companion.format(
    locale: Locale, 
    format: String, 
    vararg args: Any?
): String

بيئة التشغيل المطلوبة: JVM.

تستعمل الدالة format()‎ السلسلة النصية format الممررة كسلسلة تنسيق نصية وتعيد سلسلة نصية ناتجة عن تعويض الوسائط args المعطاة وباستخدام الإعدادات locale الممررة للمحلية (locale).

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

المعاملات

args

الوسائط المراد استعمالها في علمية التنسيق.

format

سلسلة التنسيق النصية.

locale

إعدادات المحلية المراد استعمالها في عملية التنسيق.

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

تعاد سلسلة نصية.

أمثلة

مثالٌ على استعمال الدالة ()format:

fun main(args: Array<String>) {
    var formatTemplate = "%-2s\t%s"

    println(formatTemplate.format("%b", "hsoub")) // %b	hsoub
}

مصادر