الفرق بين المراجعتين لصفحة: «Kotlin/kotlin.text/String»

من موسوعة حسوب
لا ملخص تعديل
لا ملخص تعديل
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة text.String()‎ في لغة Kotlin}}</noinclude>
<noinclude>{{DISPLAYTITLE: الدالة text.String()‎ في لغة Kotlin}}</noinclude>
ينشِئ التابع <code>String()‎</code> مصفوفةً من النوع <code>ByteArray</code>  بحجم <code>size</code> مُحدَّدٍ، بحيث كل العناصر تساوي <code>0</code>، وفي حال  تمرير دالة كوسيط فسيُحسَب كلُّ عنصرٍ فيها عبر استدعاء الدالة <code>init</code> المُحدَّدة، والتي تُعيد عنصرًا في المصفوفة بحسب الفهرس (index) المُعطى.  
يختلف سلوك الدالة <code>String()‎</code> بحسب نوع وعدد الوسائط المُمررة، انظر فقرة البنية العامة.  


== البنية العامة ==
== البنية العامة ==
سطر 48: سطر 48:
</syntaxhighlight>'''بيئة التشغيل المطلوبة: JVM'''
</syntaxhighlight>'''بيئة التشغيل المطلوبة: JVM'''


تحول الدالة <code>String()‎</code>  نقاط الأكواد (code points) الموجودة في المصفوفة <code>codePoints</code> (بداية من  العنصر ذو الفهرس <code>offset</code> وبطولٍ يساوي <code>length</code>) من جزء إلى [[Kotlin/String|سلسلة نصية]].
تحول الدالة <code>String()‎</code>  نقاط الأكواد (code points) الموجودة في المصفوفة <code>codePoints</code> (بداية من  العنصر ذو الفهرس <code>offset</code> وبطولٍ يساوي <code>length</code>) إلى [[Kotlin/String|سلسلة نصية]].<syntaxhighlight lang="kotlin">
inline fun String(stringBuffer: StringBuffer): String


== القيم المعادة ==
</syntaxhighlight>'''بيئة التشغيل المطلوبة: JVM'''
مصفوفة من النوع <code>ByteArray</code> بالحجم <code>size</code>.
 
تحول الدالة <code>String()‎</code> محتويات الكائن المُمرّر  <code>stringBuffer</code> إلى [[Kotlin/String|سلسلة نصية]].<syntaxhighlight lang="kotlin">
inline fun String(stringBuilder: StringBuilder): String


== أمثلة ==
</syntaxhighlight>'''بيئة التشغيل المطلوبة: JVM'''


=== استخدام التابع <code>ByteArray()‎</code> لإنشاء المصفوفة ===
تحول الدالة <code>String()‎</code> محتويات الكائن المُمرّر  <code>stringBuilder</code> إلى [[Kotlin/String|سلسلة نصية]].
ينشِئ التابع <code>ByteArray()‎</code> في الشيفرة الآتية مصفوفةً من ستة عناصر ، ثم تُطبَع عناصر المصفوفة:<syntaxhighlight lang="kotlin">
import java.util.Arrays


fun main(args: Array<String>) {
== القيم المعادة ==
val array = ByteArray(6)
[[Kotlin/String|سلسلة نصية]].


print(Arrays.toString(array)) // [0, 0, 0, 0, 0, 0]
== أمثلة ==
}
</syntaxhighlight>
=== استخدام الدالة <code>String()‎</code> لإنشاء المصفوفة مع تمرير دالة ===
ينشِئ التابع <code>String()‎</code> في الشيفرة الآتية مصفوفةً بستة عناصر  عبر تمرير الدالة المٌعرفة <code>f،</code>ثم تُطبَع عناصر المصفوفة:<syntaxhighlight lang="kotlin">
import java.util.Arrays


=== استخدام الدالة<code>String()‎</code>  ===
ينشِئ التابع <code>ByteArray()‎</code> في الشيفرة الآتية مصفوفةً باسم <code>array</code> مكونة من عشرة عناصر ، ثم نمرر <code>array</code> إلى الدالة <code>String()‎</code>  لتحويل جزء منها إلى [[Kotlin/String|سلسلة نصية]]، ثم نطبَع الناتج:<syntaxhighlight lang="kotlin">
fun main(args: Array<String>) {
fun main(args: Array<String>) {
val f: (Int) -> Byte = { x -> x.toByte() }
val f: (Int) -> Byte = { x -> (x+97).toByte() }
val array = ByteArray(6, f)
val array = ByteArray(10, f)
   
val x = String(array, 2, 6)


print(Arrays.toString(array)) // [0, 1, 2, 3, 4, 5]
print(x) // cdefgh
}
}
</syntaxhighlight>
</syntaxhighlight>
== انظر أيضًا ==
== انظر أيضًا ==
* صفحة الصنف <code>[[Kotlin/ByteArray/index|ByteArray]]</code>
* صفحة الصنف <code>[[Kotlin/ByteArray/index|ByteArray]]</code>
* الخاصيّة <code>[[Kotlin/ByteArray/size|ByteArray.size]]</code>: تعبِّر عن عدد العناصر الموجودة في المصفوفة.
 
* [[Kotlin/classes|الأصناف والبواني (constructors) في لغة Kotlin.]]
* <code>[[Kotlin/text/isDefined|isDefined()]]</code>: تعيد القيمة <code>true</code> في حال كان الحرف (Unicode code point) الذي استٌدعيت عبره مُعرّفًا في اليونيكود (Unicode).
 
* الخاصية <code>[[Kotlin/kotlin.text/indices|indices]]</code>: تُستخدَم هذه الخاصيّة للحصول على الفهارس الصحيحة (valid indices) لسلسلة الحروف التي استُدعيت عبرها.


== مصادر ==
== مصادر ==
* [https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/-init-.html الدالة text.String()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
* [http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/-string.html الدالة text.String()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Method]]
[[تصنيف:Kotlin Method]]

مراجعة 11:53، 7 يوليو 2018

يختلف سلوك الدالة String()‎ بحسب نوع وعدد الوسائط المُمررة، انظر فقرة البنية العامة.

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

inline fun String(
    bytes: ByteArray, 
    offset: Int, 
    length: Int, 
    charset: Charset
): String

بيئة التشغيل المطلوبة: JVM تحول الدالة String()‎ جزءًا من المصفوفة bytes (بداية من العنصر ذو الفهرس offset وبطولٍ يساوي length) باستخدام مجموعة الحروف (character set) المُمرّرة charset وتعيد ناتج التحويل على شكل سلسلة نصية.

inline fun String(bytes: ByteArray, charset: Charset): String

بيئة التشغيل المطلوبة: JVM تحول الدالة String()‎ المصفوفة bytesباستخدام مجموعة الحروف (character set) المُمرّرة charset وتعيد ناتج التحويل على شكل سلسلة نصية.

inline fun String(
    bytes: ByteArray, 
    offset: Int, 
    length: Int
): String

بيئة التشغيل المطلوبة: JVM تحول الدالة String()‎ جزءًا من المصفوفة bytes (بداية من العنصر ذو الفهرس offset وبطولٍ يساوي length) باستخدام مجموعة الحروف UTF-8 وتعيد ناتج التحويل على شكل سلسلة نصية.

inline fun String(bytes: ByteArray): String

بيئة التشغيل المطلوبة: JVM تحول الدالة String()‎ المصفوفة bytes باستخدام مجموعة الحروف UTF-8 وتعيد ناتج التحويل على شكل سلسلة نصية.

inline actual fun String(chars: CharArray): String

تحول الدالة String()‎ الحروف الموجودة في المصفوفة chars إلى سلسلة نصية.

inline actual fun String(
    chars: CharArray, 
    offset: Int, 
    length: Int
): String

تحول الدالة String()‎ الحروف الموجودة في المصفوفة chars (بداية من العنصر ذو الفهرس offset وبطولٍ يساوي length) إلى سلسلة نصية.

inline fun String(
    codePoints: IntArray, 
    offset: Int, 
    length: Int
): String

بيئة التشغيل المطلوبة: JVM تحول الدالة String()‎ نقاط الأكواد (code points) الموجودة في المصفوفة codePoints (بداية من العنصر ذو الفهرس offset وبطولٍ يساوي length) إلى سلسلة نصية.

inline fun String(stringBuffer: StringBuffer): String

بيئة التشغيل المطلوبة: JVM تحول الدالة String()‎ محتويات الكائن المُمرّر stringBuffer إلى سلسلة نصية.

inline fun String(stringBuilder: StringBuilder): String

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

تحول الدالة String()‎ محتويات الكائن المُمرّر stringBuilder إلى سلسلة نصية.

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

سلسلة نصية.

أمثلة

استخدام الدالةString()‎

ينشِئ التابع ByteArray()‎ في الشيفرة الآتية مصفوفةً باسم array مكونة من عشرة عناصر ، ثم نمرر array إلى الدالة String()‎ لتحويل جزء منها إلى سلسلة نصية، ثم نطبَع الناتج:

fun main(args: Array<String>) {
val f: (Int) -> Byte = { x -> (x+97).toByte() }
val array = ByteArray(10, f)
    
val x = String(array, 2, 6)

print(x) // cdefgh
}

انظر أيضًا

  • isDefined(): تعيد القيمة true في حال كان الحرف (Unicode code point) الذي استٌدعيت عبره مُعرّفًا في اليونيكود (Unicode).
  • الخاصية indices: تُستخدَم هذه الخاصيّة للحصول على الفهارس الصحيحة (valid indices) لسلسلة الحروف التي استُدعيت عبرها.

مصادر