Avatar ·

كيفية تحويل سلسلة نصية إلى نوع Long في Kotlin؟ طرق آمنة ومعالجة الأخطاء

مرحباً بالجميع! لقد بدأت للتو في تعلم Kotlin بعد Java، وواجهت مشكلة في تحويل سلسلة نصية إلى رقم من نوع Long. أحتاج إلى قراءة قيمة رقمية من حقل نصي في التطبيق وإجراء عمليات حسابية عليها.

إليك مثال على الكود الخاص بي:

val input = "1234567890123"
val number: Long = input.toLong()
println(number * 2)

هذا يعمل عندما تحتوي السلسلة النصية بشكل مضمون على رقم صحيح. ولكن ماذا لو أدخل المستخدم شيئاً مثل "abc123" أو "12.34"؟ عندها يتعطل البرنامج مع NumberFormatException. في Java كنت أستخدم try-catch أو أتحقق عبر Long.parseLong، ولكن هل يوجد في Kotlin طرق مدمجة أكثر أناقة؟

سؤال آخر: كيف نتعامل مع الحالة التي قد تكون فيها السلسلة النصية null؟ مثلاً، عندما تأتي البيانات من API خارجي أو قاعدة بيانات. في Kotlin توجد ميزة null-safety، هل هناك دوال خاصة؟

سأكون ممتناً لأمثلة كود مع شروحات. شكراً مسبقاً!