التابع text.toBigInteger()‎ في لغة Kotlin

من موسوعة حسوب

تحلّل الدالة toBigInteger()السلسلة النصية التي استٌدعيت عبرها وتحوّلها إلى عدد من النوع BigDecimal.

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

inline fun String.toBigInteger(): BigInteger

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

تحلّل الدالة toBigInteger()السلسلة النصية التي استٌدعيت عبرها وتحوّلها إلى عدد من النوع java.math.BigInteger وتعيد الناتج.

في حال لم تكن السلسلة النصية تمثل عددًا فستطلق الدالةُ استثناءً NumberFormatException.

inline fun String.toBigInteger(radix: Int): BigInteger

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

تحلّل الدالة toBigInteger()السلسلة النصية التي استٌدعيت عبرها وتحوّلها إلى عدد من النوع java.math.BigInteger وتعيد الناتج.

في حال لم تكن السلسلة النصية تمثل عددًا فستطلق الدالةُ استثناءً NumberFormatException. أما في حال كان الوسيط المُمرّر radix غير صالح للتحويل من سلسلة نصية إلى عدد فستطلق استثناءً IllegalArgumentException.

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

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

عدد من النوع BigInteger.

أمثلة

استخدام الدالة toBigBigInteger()‎ مع سلسلة نصية

تُعرّف الشيفرة الآتية سلسلة نصية باسم str ثم تستدعي الدالة toBigInteger()‎ عبرها مع تمرير سلسلة نصية كوسيط، ثم تطبع الناتج:

fun main(args: Array<String>) {
    val str = "12344565656"
    
    println(str.toBigInteger()) // 12344565656
}

استخدام الدالة toBigInteger()‎ مع سلسلة نصية: الحالة الثانية

تُعرّف الشيفرة الآتية سلسلة نصية باسم str ثم تستدعي الدالة toBigInteger()‎ عبرها مع تمرير سلسلة نصية كوسيط، ثم تطبع الناتج:

fun main(args: Array<String>) {
    val str = "aa12344565656"
    
    println(str.toBigInteger()) // الدالة ستطلق استثناء
}

المُخرجات:

Exception in thread "main" java.lang.NumberFormatException: For input string: "aa32"
    at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
    at java.lang.Integer.parseInt(Integer.java:580)
    at java.math.BigInteger.&amp;lt;init&amp;gt;(BigInteger.java:461)
    at java.math.BigInteger.&amp;lt;init&amp;gt;(BigInteger.java:597)
    at Simplest_versionKt.main(Simplest version.kt:4)

انظر أيضًا

  • toUpperCase()‎ : تحوّل الدالة toUpperCase()‎ الحرف أو السلسلة النصية التي استٌدعيت عبرها إلى حالة الأحرف الكبيرة (uppercase).
  • isDefined(): تعيد القيمة true في حال كان الحرف (Unicode code point) الذي استٌدعيت عبره مُعرّفًا في اليونيكود (Unicode).

مصادر