الدالة 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) لكنّ وضع التقريب (rounding mode) مضبوط إلى القيمة java.math.RoundingMode.UNNECESSARY
، فسيُطلَق الاستثناء ArithmeticException
.
يُلاحَظ وجود الكلمة المفتاحية inline
للدلالة على أن هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة الدوال المباشرة (inline functions)).
المعاملات
mathContext
كائن من النوع MathContext
يحدد الدقة ويضبط وضع التقريب (rounding mode).
القيم المعادة
عدد من النوع BigDecimal
يمثل ناتج تحويل السلسلة النصية المعطاة.
أمثلة
مثالٌ على استعمال الدالة toBigDecimal()
:
fun main(args: Array<String>) {
val str = "123.454"
println(str.toBigDecimal()) // 123.454
println(str.toBigDecimal().javaClass.kotlin.qualifiedName) // java.math.BigDecimal
}
مثالٌ آخر على استعمال الدالة 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)
انظر أيضًا
- الدالة
toBigDecimalOrNull()
: تحلّل الدالةtoBigDecimalOrNull()
السلسلة النصية التي استٌدعيت معها وتحوّلها إلى عدد من النوعBigDecimal
. - الدالة
toBigInteger()
: تحلّل السلسلة النصية التي استٌدعيت معها وتحوّلها إلى عدد من النوعBigDecimal
. - الدالة
toBigIntegerOrNull()
: تحلّل السلسلة النصية التي استٌدعيت معها وتحوّلها إلى عدد من النوعBigInteger
. - الدالة
toBoolean()
: تعيد القيمةtrue
إن كانت السلسلة النصية التي استٌدعيت معها تساوي"true"
مع تجاهل حالة الأحرف، أو تعيد القيمةfalse
. - الدالة
toByte()
: تحلّل السلسلة النصية التي استٌدعيت معها وتحوّلها إلى عدد من النوعByte
. - الدالة
toByteArray()
: ترمز جميع محارف السلسلة النصية التي استٌدعيت معها وفقًا لترميز محدد ثم تضع الناتج في مصفوفة من النوعByteArray
. - الدالة
toUpperCase()
: تحوّل المحرف أو جميع محارف السلسلة النصية التي استٌدعيت معها إلى محارف كبيرة (uppercase). - الدالة
toCharArray()
: تضع جميع محارف السلسلة النصية التي استٌدعيت معها في مصفوفة من النوعCharArray
، إذ يوضع كل محرف في عنصر. - الدالة
toCollection()
: تضيف كل محارف السلسلة التي استٌدعيت معها إلى المجموعة المتغيرة المُمرّرة إليها. - الدالة
toDouble()
: تحلّل السلسلة النصية التي استٌدعيت معها وتحوّلها إلى عدد عشري مضاعف. - الدالة
toDoubleOrNull()
: تحلّل السلسلة النصية التي استٌدعيت عبرها وتحوّلها إلى عدد عشري مضاعف.
- الدالة
toFloat()
: تحلّل السلسلة النصية التي استٌدعيت عبرها وتحوّلها إلى عدد عشري. - الدالة
toFloatOrNull()
: تحلّل السلسلة النصية التي استٌدعيت عبرها وتحوّلها إلى عدد عشري. - الدالة
toHashSet()
: تحلّل كائنًا من النوعHashSet
يحوي كل محارف السلسلة التي استٌدعيت معها. - الدالة
toInt()
: تحلّل السلسلة النصية التي استٌدعيت معها وتحوّلها إلى عدد صحيح. - الدالة
toIntOrNull()
: تحلّل السلسلة النصية التي استٌدعيت معها وتحوّلها إلى عدد صحيح. - الدالة
toList()
: تضيف كل محارف سلسلة المحارف التي استٌدعيت معها إلى قائمة، إذ يوضع كل محرف في عنصر. - الدالة
toLong()
: تحلّل السلسلة النصية التي استٌدعيت معها وتحوّلها إلى عدد طويل. - الدالة
toLongOrNull()
: تحلّل السلسلة النصية التي استٌدعيت عبرها وتحوّلها إلى عدد طويل. - الدالة
toLowerCase()
: تحول المحرف أو جميع محارف السلسلة النصية التي استٌدعيت معها إلى محارف صغيرة (lowercase). - الدالة
toMutableList()
: تضيف كل محارف سلسلة المحارف التي استٌدعيت معها إلى قائمة متغيرة، إذ يوضع كل محرف في عنصر. - الدالة
toPattern()
: تحول السلسلة النصية التي استٌدعيت معها إلى نمط. - الدالة
toRegex()
: تحول السلسلة النصية التي استٌدعيت معها إلى تعبير نمطي (regular expression). - الدالة
toSet()
: تضيف كل محارف سلسلة الحروف التي استٌدعيت معها إلى مجموعة من النوعSet
، إذ يوضع كل محرف في عنصر. - الدالة
toShort()
: تحلّل السلسلة النصية التي استٌدعيت معها وتحوّلها إلى عدد قصير. - الدالة
toShortOrNull()
: تحلّل السلسلة النصية التي استٌدعيت معها وتحوّلها إلى عدد قصير. - الدالة
toSortedSet()
: تضيف كل محارف السلسلة التي استٌدعيت معها إلى مجموعة من النوعSortedSet
، إذ يوضع كل محرف في عنصر. - الدالة
toString()
: تحول العدد الذي استٌدعي معها وفقًا لأساس مُحدّد إلى سلسلة نصية. - الدالة
toTitleCase()
: تحول المحرف الذي استٌدعي معها إلى محرف عنواني (titlecase). تتكون المحارف العنوانية عادةً من محرفين ملتصقين، مثل'Dž'
أو'Nj'
، إذ يعاملان وكأنَّهما محرفٌ واحدٌ فقط. - الدالة
toUpperCase()
: تحول المحرف أو جميع محارف السلسلة النصية التي استٌدعيت معها إلى محارف كبيرة (uppercase).