الدالة String()‎ في Kotlin

من موسوعة حسوب
مراجعة 06:46، 2 سبتمبر 2018 بواسطة جميل-بيلوني (نقاش | مساهمات)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

تحول الدالة String()‎ جميع محتويات المصفوفة أو الكائن الممرر إليها (أو جزء منها فقط) إلى سلسلة نصية ويمكن أن تكون بترميز محدد.

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

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

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

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

تحول الدالة String()‎ جميع محتويات المصفوفة bytes أو جزءًا محددًا منها (يبدأ عند العنصر الذي ينزاح بمقدار offset عن أول عنصر ويمتد بطول length) إلى المحارف التي تقابلها بالترميز Charset ثم تعيد ناتج التحويل في سلسلة نصية.

inline fun String(bytes: ByteArray): String 

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

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

تحول الدالة String()‎ جميع محتويات المصفوفة bytes أو جزءًا محددًا منها (يبدأ عند العنصر الذي ينزاح بمقدار offset عن أول عنصر ويمتد بطول length) إلى المحارف التي تقابلها بالترميز UTF-8 ثم تعيد ناتج التحويل في سلسلة نصية.

inline actual fun String(chars: CharArray): String 

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 إلى سلسلة نصية.

المعاملات

bytes

مصفوفة من النوع ByteArray التي يراد تحويلها أو تحويل جزء من عناصرها.

offset

عدد صحيح يحدد مقدار إزاحة العنصر الذي يمثل بداية الجزء المراد تحويله عن العنصر الأول.

length

عدد صحيح يمثل طول الجزء المراد تحويله.

charset

الترميز المراد تحويل المحارف إليه.

chars

مصفوفة من النوع CharArray التي يراد تحويلها أو تحويل جزء من عناصر.

codePoints

مصفوفة من النوع IntArray تمثل قيم محارف الترميز الموحد (Unicode code point) المراد تحويلها.

stringBuffer

كائن من النوع stringBuffer الذي يراد تحويله.

stringBuilder

كائن من النوع stringBuilder الذي يراد تحويله.

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

تعاد سلسلة نصية ناتجة عن تحويل جميع محتويات المصفوفة أو الكائن المعطى أو جزء منها.

أمثلة

ينشِئ التابع ByteArray()‎ في الشيفرة التالية مصفوفةً باسم 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
}

انظر أيضًا

  • الدالة any(): تتحقق إن كانت سلسلة من المحارف تحتوي على محرف واحد على أقل تقدير، أو كانت تحتوي على محرف واحد محقق لشرط معين. 
  • الدالة all()‎: تتحقق إن كانت جميع محارف سلسلة معينة من المحارف محققةً لشرط معين. 

مصادر