الفرق بين المراجعتين لصفحة: «Kotlin/kotlin.text/toBigDecimal»
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) طلا ملخص تعديل |
||
(3 مراجعات متوسطة بواسطة مستخدمين اثنين آخرين غير معروضة) | |||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: | <noinclude>{{DISPLAYTITLE:الدالة <code>toBigDecimal()</code> في Kotlin}}</noinclude> | ||
تحلّل الدالة <code>toBigDecimal()</code> [[Kotlin/String|السلسلة النصية]] التي استٌدعيت | تحلّل الدالة <code>toBigDecimal()</code> [[Kotlin/String|السلسلة النصية]] التي استٌدعيت معها وتحوّلها إلى عدد من النوع <code>BigDecimal</code>. | ||
==البنية العامة== | |||
== البنية العامة == | |||
<syntaxhighlight lang="kotlin"> | <syntaxhighlight lang="kotlin"> | ||
inline fun String.toBigDecimal(): BigDecimal | inline fun String.toBigDecimal(): BigDecimal | ||
</syntaxhighlight>''' | </syntaxhighlight>'''منصة التشغيل والإصدار المطلوبان:''' Kotlin 1.2 ، JVM. | ||
تحلّل الدالة <code>toBigDecimal()</code> [[Kotlin/String|السلسلة النصية]] التي استٌدعيت | تحلّل الدالة <code>toBigDecimal()</code> [[Kotlin/String|السلسلة النصية]] التي استٌدعيت معها وتحوّلها إلى عدد من النوع <code>java.math.BigDecimal</code> ثم تعيد الناتج. | ||
إن لم تكن [[Kotlin/String|السلسلة النصية]] تمثل عددًا، فسيُطلَق الاستثناء <code>NumberFormatException</code>.<syntaxhighlight lang="kotlin"> | |||
inline fun String.toBigDecimal( | inline fun String.toBigDecimal( | ||
mathContext: MathContext | mathContext: MathContext | ||
): BigDecimal | ): BigDecimal | ||
</syntaxhighlight>''' | </syntaxhighlight>'''منصة التشغيل والإصدار المطلوبان:''' Kotlin 1.2 ، JVM. | ||
تحلّل الدالة <code>toBigDecimal()</code> [[Kotlin/String|السلسلة النصية]] التي استٌدعيت | تحلّل الدالة <code>toBigDecimal()</code> [[Kotlin/String|السلسلة النصية]] التي استٌدعيت معها وتحوّلها إلى عدد من النوع <code>java.math.BigDecimal</code> ثم تعيد الناتج. | ||
إن لم تكن [[Kotlin/String|السلسلة النصية]] تمثل عددًا، فسيُطلَق الاستثناء <code>NumberFormatException</code>. أما إن كانت هناك ضرورة للقيام بالتقريب (rounding) لكنّ وضع التقريب (rounding mode) مضبوط إلى القيمة <code>java.math.RoundingMode.UNNECESSARY</code>، فسيُطلَق الاستثناء <code>ArithmeticException</code>. | |||
يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة [[Kotlin/inline functions|الدوال المباشرة (inline functions)]]). | |||
== المعاملات == | |||
== | === <code>mathContext</code> === | ||
كائن من النوع <code>MathContext</code> يحدد الدقة ويضبط وضع التقريب (rounding mode). | |||
== أمثلة == | ==القيم المعادة== | ||
عدد من النوع <code>BigDecimal</code> يمثل ناتج تحويل [[Kotlin/String|السلسلة النصية]] المعطاة. | |||
==أمثلة== | |||
مثالٌ على استعمال الدالة <code>toBigDecimal()</code>:<syntaxhighlight lang="kotlin"> | |||
fun main(args: Array<String>) { | |||
val str = "123.454" | |||
println(str.toBigDecimal()) // 123.454 | |||
println(str.toBigDecimal().javaClass.kotlin.qualifiedName) // java.math.BigDecimal | |||
println(str.toBigDecimal()) // | |||
} | } | ||
</syntaxhighlight> | </syntaxhighlight>مثالٌ آخر على استعمال الدالة <code>toBigDecimal()</code>:<syntaxhighlight lang="kotlin"> | ||
fun main(args: Array<String>) { | fun main(args: Array<String>) { | ||
val str = "aa12344565656" | val str = "aa12344565656" | ||
سطر 44: | سطر 42: | ||
println(str.toBigDecimal()) // الدالة ستطلق استثناء | println(str.toBigDecimal()) // الدالة ستطلق استثناء | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight>سيعطي هذا المثال عند تنفيذه الناتج التالي:<syntaxhighlight lang="text"> | ||
Exception in thread "main" java.lang.NumberFormatException | 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:494) | ||
at java.math.BigDecimal.&lt;init&gt;(BigDecimal.java:383) | at java.math.BigDecimal.&lt;init&gt;(BigDecimal.java:383) | ||
at java.math.BigDecimal.&lt;init&gt;(BigDecimal.java:806) | at java.math.BigDecimal.&lt;init&gt;(BigDecimal.java:806) | ||
at Simplest_versionKt.main(Simplest version.kt:4) | at Simplest_versionKt.main(Simplest version.kt:4) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر أيضًا== | |||
* <code>[[Kotlin/text/ | *الدالة <code>[[Kotlin/kotlin.text/toBigDecimalOrNull|toBigDecimalOrNull()]]</code>: تحلّل الدالة <code>toBigDecimalOrNull()</code> [[Kotlin/String|السلسلة النصية]] التي استٌدعيت معها وتحوّلها إلى عدد من النوع <code>BigDecimal</code>. | ||
*الدالة [[Kotlin/kotlin.text/toBigInteger|<code>toBigInteger()</code>]]: تحلّل [[Kotlin/String|السلسلة النصية]] التي استٌدعيت معها وتحوّلها إلى عدد من النوع <code>BigDecimal</code>. | |||
* | *الدالة [[Kotlin/kotlin.text/toByte|<code>toByte()</code>]]: تحلّل [[Kotlin/String|السلسلة النصية]] التي استٌدعيت معها وتحوّلها إلى عدد من النوع <code>[[Kotlin/Byte|Byte]]</code>. | ||
*الدالة <nowiki/>[[Kotlin/kotlin.text/toDouble|<code>toDouble()</code>]]: تحلّل السلسلة النصية التي استٌدعيت معها وتحوّلها إلى <nowiki/>[[Kotlin/Double|عدد عشري مضاعف]]. | |||
*الدالة <nowiki/>[[Kotlin/kotlin.text/toDoubleOrNull|<code>toDoubleOrNull()</code>]]: تحلّل السلسلة النصية التي استٌدعيت عبرها وتحوّلها إلى <nowiki/>[[Kotlin/Double|عدد عشري مضاعف]]. | |||
* <code>[[Kotlin/text/ | * الدالة <nowiki/>[[Kotlin/kotlin.text/toFloat|<code>toFloat()</code>]]: تحلّل السلسلة النصية التي استٌدعيت عبرها وتحوّلها إلى <nowiki/>[[Kotlin/Float|عدد عشري]]. | ||
* الدالة <nowiki/>[[Kotlin/kotlin.text/toFloatOrNull|<code>toFloatOrNull()</code>]]: تحلّل السلسلة النصية التي استٌدعيت عبرها وتحوّلها إلى <nowiki/>[[Kotlin/Float|عدد عشري]]. | |||
* الدالة <nowiki/>[[Kotlin/kotlin.text/toInt|<code>toInt()</code>]]: تحلّل السلسلة النصية التي استٌدعيت معها وتحوّلها إلى عدد صحيح. | |||
* الدالة [[Kotlin/kotlin.text/toList|<code>toList()</code>]]: تضيف كل محارف [[Kotlin/CharSequence|سلسلة المحارف]] التي استٌدعيت معها إلى [[Kotlin/collections/List|قائمة]]، إذ يوضع كل محرف في عنصر. | |||
* الدالة <code>[[Kotlin/kotlin.text/toLong|toLong()]]</code>: تحلّل [[Kotlin/String|السلسلة النصية]] التي استٌدعيت معها وتحوّلها إلى [[Kotlin/Long|عدد طويل]]. | |||
* الدالة [[Kotlin/kotlin.text/toString|<code>toString()</code>]] : تحول العدد الذي استٌدعي معها وفقًا لأساس مُحدّد إلى [[Kotlin/String|سلسلة نصية]]. | |||
== مصادر == | ==مصادر== | ||
* [http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/to-big-decimal.html صفحة الدالة toBigDecimal() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | *[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/to-big-decimal.html صفحة الدالة toBigDecimal() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin | [[تصنيف:Kotlin Function]] | ||
[[تصنيف:Kotlin Text]] |
المراجعة الحالية بتاريخ 11:40، 6 سبتمبر 2018
تحلّل الدالة 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
. - الدالة
toByte()
: تحلّل السلسلة النصية التي استٌدعيت معها وتحوّلها إلى عدد من النوعByte
. - الدالة
toDouble()
: تحلّل السلسلة النصية التي استٌدعيت معها وتحوّلها إلى عدد عشري مضاعف. - الدالة
toDoubleOrNull()
: تحلّل السلسلة النصية التي استٌدعيت عبرها وتحوّلها إلى عدد عشري مضاعف.
- الدالة
toFloat()
: تحلّل السلسلة النصية التي استٌدعيت عبرها وتحوّلها إلى عدد عشري. - الدالة
toFloatOrNull()
: تحلّل السلسلة النصية التي استٌدعيت عبرها وتحوّلها إلى عدد عشري. - الدالة
toInt()
: تحلّل السلسلة النصية التي استٌدعيت معها وتحوّلها إلى عدد صحيح. - الدالة
toList()
: تضيف كل محارف سلسلة المحارف التي استٌدعيت معها إلى قائمة، إذ يوضع كل محرف في عنصر. - الدالة
toLong()
: تحلّل السلسلة النصية التي استٌدعيت معها وتحوّلها إلى عدد طويل. - الدالة
toString()
: تحول العدد الذي استٌدعي معها وفقًا لأساس مُحدّد إلى سلسلة نصية.