التابع text.toBigDecimal() في لغة Kotlin
تحلّل الدالة toBigDecimal()
السلسلة النصية التي استٌدعيت عبرها وتحوّلها إلى عدد من النوع BigDecimal
.
البنية العامة
inline fun String.toBigDecimal(): BigDecimal
بيئة التشغيل المطلوبة: Kotlin 1.2, JVM
تحلّل الدالة toBigDecimal()
السلسلة النصية التي استٌدعيت عبرها وتحوّلها إلى عدد من النوع java.math.BigDecimal
وتعيد الناتج.
في حال لم تكن السلسلة النصية تمثل عددًا فستطلق الدالةُ استثناءً NumberFormatException
.
inline fun String.toBigDecimal(
mathContext: MathContext
): BigDecimal
بيئة التشغيل المطلوبة: Kotlin 1.2, JVM
تحلّل الدالة toBigDecimal()
السلسلة النصية التي استٌدعيت عبرها وتحوّلها إلى عدد من النوع java.math.BigDecimal
وتعيد الناتج.
في حال لم تكن السلسلة النصية تمثل عددًا فستطلق الدالةُ استثناءً NumberFormatException
. أما في حال كانت هناك ضرورة للقيام بالتقريب (rounding) لكنّ وضع التقريب مُعد على الوضع java.math.RoundingMode.UNNECESSARY
، فستطلق استثناءً ArithmeticException
.
الوسيط mathContext
يحدد دقة وضع التقريب (rounding mode).
يُلاحَظ وجود الكلمة المفتاحية inline
للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع توثيق الدوال المباشرة (inline functions).
القيم المعادة
عدد من النوع java.math.BigDecimal
أمثلة
استخدام الدالة toBigDecimal()
مع سلسلة نصية
تُعرّف الشيفرة الآتية سلسلة نصية باسم str
ثم تستدعي الدالة toBigDecimal()
عبرها مع تمرير سلسلة نصية كوسيط، ثم تطبع الناتج:
fun main(args: Array<String>) {
val str = "12344565656"
println(str.toBigDecimal()) // 12344565656
}
استخدام الدالة toBigDecimal()
مع سلسلة نصية: الحالة الثانية
تُعرّف الشيفرة الآتية سلسلة نصية باسم str
ثم تستدعي الدالة toBigDecimal()
عبرها مع تمرير سلسلة نصية كوسيط، ثم تطبع الناتج:
fun main(args: Array<String>) {
val str = "aa12344565656"
println(str.toBigDecimal()) // الدالة ستطلق استثناء
}
المُخرجات:
Exception in thread "main" java.lang.NumberFormatException
at java.math.BigDecimal.&lt;init&gt;(BigDecimal.java:494)
at java.math.BigDecimal.&lt;init&gt;(BigDecimal.java:383)
at java.math.BigDecimal.&lt;init&gt;(BigDecimal.java:806)
at Simplest_versionKt.main(Simplest version.kt:4)
انظر أيضًا
toUpperCase()
: تحوّل الدالةtoUpperCase()
الحرف أو السلسلة النصية التي استٌدعيت عبرها إلى حالة الأحرف الكبيرة (uppercase).
isDefined()
: تعيد القيمةtrue
في حال كان الحرف (Unicode code point) الذي استٌدعيت عبره مُعرّفًا في اليونيكود (Unicode).
isDefined()
: تعيد القيمةtrue
في حال كان الحرف (Unicode code point) الذي استٌدعيت عبره مُعرّفًا في اليونيكود (Unicode).