الفرق بين المراجعتين لصفحة: «Kotlin/kotlin.text/toBigInteger»

من موسوعة حسوب
لا ملخص تعديل
طلا ملخص تعديل
 
(مراجعتان متوسطتان بواسطة مستخدمين اثنين آخرين غير معروضتين)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع text.toBigInteger()‎ في لغة Kotlin}}</noinclude>
<noinclude>{{DISPLAYTITLE: الدالة <code>toBigInteger()‎</code> في Kotlin}}</noinclude>
تحلّل الدالة <code>toBigInteger()</code>‎ [[Kotlin/String|السلسلة النصية]] التي استٌدعيت عبرها وتحوّلها إلى عدد من النوع <code>BigDecimal</code>.
تحلّل الدالة <code>toBigInteger()</code>‎ [[Kotlin/String|السلسلة النصية]] التي استٌدعيت معها وتحوّلها إلى عدد من النوع <code>BigDecimal</code>.


== البنية العامة ==
== البنية العامة ==
سطر 6: سطر 6:
inline fun String.toBigInteger(): BigInteger
inline fun String.toBigInteger(): BigInteger


</syntaxhighlight>'''بيئة التشغيل المطلوبة: Kotlin 1.2, JVM'''
</syntaxhighlight>'''بيئة التشغيل المطلوبة''': Kotlin 1.2 ، JVM.


تحلّل الدالة <code>toBigInteger()</code>‎ [[Kotlin/String|السلسلة النصية]] التي استٌدعيت عبرها وتحوّلها إلى عدد من النوع <code>java.math.BigInteger</code>  وتعيد الناتج.
تحلّل الدالة <code>toBigInteger()</code>‎ [[Kotlin/String|السلسلة النصية]] التي استٌدعيت معها وتحوّلها إلى عدد من النوع <code>java.math.BigInteger</code>  وتعيد الناتج.


في حال لم تكن [[Kotlin/String|السلسلة النصية]] تمثل عددًا فستطلق الدالةُ استثناءً <code>NumberFormatException</code>.<syntaxhighlight lang="kotlin">
إن لم تكن [[Kotlin/String|السلسلة النصية]] تمثل عددًا، فسيُطلَق الاستثناء <code>NumberFormatException</code>.<syntaxhighlight lang="kotlin">
inline fun String.toBigInteger(radix: Int): BigInteger  
inline fun String.toBigInteger(radix: Int): BigInteger  


</syntaxhighlight>'''بيئة التشغيل المطلوبة: Kotlin 1.2, JVM'''
</syntaxhighlight>'''بيئة التشغيل المطلوبة''': Kotlin 1.2 ، JVM.


تحلّل الدالة <code>toBigInteger()</code>‎ [[Kotlin/String|السلسلة النصية]] التي استٌدعيت عبرها وتحوّلها إلى عدد من النوع <code>java.math.BigInteger</code> وتعيد الناتج.
تحلّل الدالة <code>toBigInteger()</code>‎ [[Kotlin/String|السلسلة النصية]] التي استٌدعيت عبرها وتحوّلها إلى عدد من النوع <code>java.math.BigInteger</code> وتعيد الناتج.


في حال لم تكن [[Kotlin/String|السلسلة النصية]] تمثل عددًا فستطلق الدالةُ استثناءً <code>NumberFormatException</code>. أما في حال كان الوسيط المُمرّر <code>radix</code> غير صالح للتحويل من  [[Kotlin/String|سلسلة نصية]] إلى عدد فستطلق استثناءً <code>IllegalArgumentException</code>.
إن لم تكن [[Kotlin/String|السلسلة النصية]] تمثل عددًا، فسيُطلَق الاستثناء <code>NumberFormatException</code>. أما في حال كان المعامل <code>radix</code> المعطى أساسًا غير صالح لتحويل [[Kotlin/String|السلسلة النصية]] إلى عدد، فسيُطلَق الاستثناء <code>IllegalArgumentException</code>.


يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة [[Kotlin/inline functions|الدوال المباشرة (inline functions)]]).
 
== المعاملات ==
 
=== <code>radix</code> ===
عدد صحيح بين 2 و 36 الذي يُمثِّل أساس القيمة العددية المحتواة في السلسلة النصية والتي ستستعمل في عملية التحويل؛ لاستخدام نظام العد العشري (decimal) شائع الاستخدام بين البشر، فحدِّد القيمة 10.
 
إن كانت القيمة المعطاة لهذا المعامل غير صالحة، فسيُطلَق الاستثناء <code>IllegalArgumentException</code>.


== القيم المعادة ==
== القيم المعادة ==
عدد من النوع <code>BigInteger</code>.
عدد من النوع <code>BigInteger</code> يمثل ناتج تحويل [[Kotlin/String|السلسلة النصية]] المعطاة.


== أمثلة ==
== أمثلة ==
 
مثالٌ<nowiki/> على استعمال الدالة <code>toBigInteger()‎</code>:<syntaxhighlight lang="kotlin">
=== استخدام الدالة <code>toBigBigInteger()‎</code> مع سلسلة نصية ===
تُعرّف الشيفرة الآتية <nowiki/>[[Kotlin/String|سلسلة نصية]] باسم <code>str</code> ثم تستدعي الدالة <code>toBigInteger()‎</code> عبرها مع تمرير  [[Kotlin/String|سلسلة نصية]] كوسيط، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
fun main(args: Array<String>) {
fun main(args: Array<String>) {
     val str = "12344565656"
     val str = "12344565656"
      
      
     println(str.toBigInteger()) // 12344565656
     println(str.toBigInteger(32)) // 1199709094058150
}
}
</syntaxhighlight>
</syntaxhighlight>
=== استخدام الدالة <code>toBigInteger()‎</code> مع سلسلة نصية: الحالة الثانية ===
مثالٌ آخر على استعمال الدالة <code>toBigInteger()‎</code>:<syntaxhighlight lang="kotlin">
تُعرّف الشيفرة الآتية [[Kotlin/String|سلسلة نصية]] باسم <code>str</code> ثم تستدعي الدالة <code>toBigInteger()‎</code> عبرها مع تمرير  [[Kotlin/String|سلسلة نصية]] كوسيط، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
fun main(args: Array<String>) {
fun main(args: Array<String>) {
     val str = "aa12344565656"
     val str = "aa12344565656"
سطر 42: سطر 46:
}
}
</syntaxhighlight>
</syntaxhighlight>
المُخرجات:<syntaxhighlight lang="kotlin">
سيعطي هذا المثال عند تنفيذه الناتج التالي:<syntaxhighlight lang="text">
Exception in thread "main" java.lang.NumberFormatException: For input string: "aa32"
Exception in thread "main" java.lang.NumberFormatException: For input string: "aa32"
     at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
     at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
سطر 48: سطر 52:
     at java.math.BigInteger.&amp;lt;init&amp;gt;(BigInteger.java:461)
     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 java.math.BigInteger.&amp;lt;init&amp;gt;(BigInteger.java:597)
     at Simplest_versionKt.main(Simplest version.kt:4)
     at Simplest_versionKt.main(Simplest version.kt:4)  
</syntaxhighlight>
</syntaxhighlight>
=== انظر أيضًا ===
== انظر أيضًا ==
* <code>[[Kotlin/text/toUpperCase|toUpperCase()]]</code>‎ : تحوّل الدالة <code>toUpperCase()</code>‎ الحرف أو السلسلة النصية التي استٌدعيت عبرها إلى حالة الأحرف الكبيرة (uppercase).
*الدالة [[Kotlin/kotlin.text/toBigDecimal|<code>toBigDecimal()</code>‎]]: تحلّل [[Kotlin/String|السلسلة النصية]] التي استٌدعيت معها وتحوّلها إلى عدد من النوع <code>BigDecimal</code>.
 
*الدالة [[Kotlin/kotlin.text/toBigIntegerOrNull|<code>toBigIntegerOrNull()</code>‎]]: تحلّل [[Kotlin/String|السلسلة النصية]] التي استٌدعيت معها وتحوّلها إلى عدد من النوع <code>BigInteger</code>.
*<code>[[Kotlin/text/isDefined|toBigDecimalOrNull()]]</code>: تحلّل الدالة <code>toBigDecimalOrNull()</code>‎ [[Kotlin/String|السلسلة النصية]] التي استٌدعيت عبرها وتحوّلها إلى عدد من النوع <code>BigDecimal</code>.
*الدالة [[Kotlin/kotlin.text/toByte|<code>toByte()</code>‎]]: تحلّل [[Kotlin/String|السلسلة النصية]] التي استٌدعيت معها وتحوّلها إلى عدد من النوع <code>[[Kotlin/Byte|Byte]]</code>.
 
*الدالة [[Kotlin/kotlin.text/toByteArray|<code>toByteArray()</code>‎]]: ترمز جميع محارف [[Kotlin/String|السلسلة النصية]] التي استٌدعيت معها وفقًا لترميز محدد ثم تضع الناتج في مصفوفة من النوع <code>[[Kotlin/ByteArray|ByteArray]]</code>.
* <code>[[Kotlin/text/isDefined|isDefined()]]‎</code>: تعيد القيمة <code>true</code> في حال كان الحرف (Unicode code point) الذي استٌدعيت عبره مُعرّفًا في اليونيكود (Unicode).


*الدالة <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/toSet|<code>toSet()</code>‎]]: تضيف كل محارف [[Kotlin/CharSequence/index|سلسلة الحروف]]  التي استٌدعيت معها إلى مجموعة من النوع <code>[[Kotlin/Set|Set]]</code>، إذ يوضع كل محرف في عنصر.
*الدالة [[Kotlin/kotlin.text/toShort|<code>toShort()</code>‎]]: تحلّل [[Kotlin/String|السلسلة النصية]] التي استٌدعيت معها وتحوّلها إلى [[Kotlin/Short|عدد قصير.]]
*الدالة [[Kotlin/kotlin.text/toShortOrNull|<code>toShortOrNull()</code>‎]]: تحلّل [[Kotlin/String|السلسلة النصية]] التي استٌدعيت معها وتحوّلها إلى [[Kotlin/Short|عدد قصير]].
*الدالة [[Kotlin/kotlin.text/toSortedSet|<code>toSortedSet()</code>‎]]: تضيف كل محارف [[Kotlin/CharSequence|السلسلة]]  التي استٌدعيت معها إلى مجموعة من النوع <code>[[Kotlin/collections/SortedSet|SortedSet]]</code>، إذ يوضع كل محرف في عنصر.
*الدالة [[Kotlin/kotlin.text/toString|<code>toString()</code>‎]] : تحول العدد الذي استٌدعي معها وفقًا لأساس مُحدّد إلى [[Kotlin/String|سلسلة نصية]].
== مصادر ==
== مصادر ==
* [http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/to-big-decimal.html صفحة الدالة toBigInteger()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
* [http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/to-big-integer.html صفحة الدالة toBigInteger()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Method]]
[[تصنيف:Kotlin Function]]
[[تصنيف:Kotlin Text]]

المراجعة الحالية بتاريخ 11:29، 6 سبتمبر 2018

تحلّل الدالة 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)).

المعاملات

radix

عدد صحيح بين 2 و 36 الذي يُمثِّل أساس القيمة العددية المحتواة في السلسلة النصية والتي ستستعمل في عملية التحويل؛ لاستخدام نظام العد العشري (decimal) شائع الاستخدام بين البشر، فحدِّد القيمة 10.

إن كانت القيمة المعطاة لهذا المعامل غير صالحة، فسيُطلَق الاستثناء IllegalArgumentException.

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

عدد من النوع BigInteger يمثل ناتج تحويل السلسلة النصية المعطاة.

أمثلة

مثالٌ على استعمال الدالة toBigInteger()‎:

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

مثالٌ آخر على استعمال الدالة 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)

انظر أيضًا

مصادر