ستجد حلا: تحويل سلسلة إلى تعويم جافا

آخر تحديث: 06/19/2023
نبذة عن الكاتب: مسار مصدر جافا

تحويل السلسلة إلى تعويم يعد تحويل سلسلة إلى تعويم مهمة شائعة في برمجة Java ، خاصة عند التعامل مع مدخلات المستخدم أو البيانات من مصادر خارجية التي تحتاج إلى المعالجة وتحويلها إلى قيم عددية للحسابات والمقارنات. في هذه المقالة ، سوف نستكشف الطرق والأساليب المختلفة لتحويل سلسلة إلى تعويم ، ومناقشة المزايا والمزالق المحتملة ، وتقديم تفسيرات خطوة بخطوة للكود المتضمن في العملية. علاوة على ذلك ، سوف نتعمق في مكتبات Java والوظائف المرتبطة بهذه المشكلة ، ونعرض مدى ملاءمتها وقابليتها للتطبيق في سيناريوهات البرمجة في العالم الحقيقي.

طريقة Java's Float.parseFloat ()

الطريقة الأكثر مباشرة والأكثر استخدامًا لتحويل سلسلة إلى عدد عشري في Java هي استخدام Float.parseFloat () طريقة. هذه الطريقة الثابتة هي جزء من تطفو ويأخذ فئة المجمع وسيطة واحدة تحتوي على تمثيل السلسلة لرقم الفاصلة العائمة. الطريقة ترجع بدائية الطفو القيمة التي تمثل القيمة العددية لسلسلة الإدخال.

String str = "3.14";
float floatNum = Float.parseFloat(str);
System.out.println("Converted float: " + floatNum);

في المثال أعلاه ، نقوم أولاً بإنشاء سلسلة شارع التي تمثل رقم الفاصلة العائمة "3.14". بعد ذلك ، نسمي Float.parseFloat () طريقة مع هذه السلسلة كوسيطة. تعالج هذه الطريقة سلسلة الإدخال وتعيد قيمة عائمة أولية ، نخزنها في المتغير تعويم. أخيرًا ، نقوم بطباعة العوامة الناتجة على وحدة التحكم.

معالجة NumberFormatException

من الضروري النظر في إمكانية مواجهة أ NumberFormatException عند تحويل السلاسل إلى عوامات باستخدام Float.parseFloat () طريقة. إذا كانت سلسلة الإدخال تحتوي على أحرف غير رقمية أو تم تنسيقها بشكل غير صحيح ، فإن الطريقة ستطرح هذا الاستثناء ، مما يتسبب في تعطل البرنامج إذا لم يتم التعامل معه بشكل صحيح.

لتجنب مثل هذه المشكلات ، يوصى باستخدام كتلة try-catch للتعامل مع الاستثناءات المحتملة:

String str = "3.14a";
float floatNum = 0;
try {
    floatNum = Float.parseFloat(str);
} catch (NumberFormatException e) {
    System.out.println("Invalid format: " + e.getMessage());
}
System.out.println("Converted float: " + floatNum);

في هذا المثال ، لدينا سلسلة إدخال شارع بتنسيق غير صالح بسبب تضمين أحرف غير رقمية. عند استدعاء Float.parseFloat () طريقة داخل كتلة try ، يمكننا التعامل مع ملف NumberFormatException دون تعطل البرنامج. سيتم تنفيذ كتلة catch في حالة حدوث استثناء ، وتنبيه المستخدم إلى الإدخال غير الصحيح والسماح للبرنامج بالاستمرار.

فئة التنسيق العشري وطريقة التحليل () لجافا

هناك طريقة أخرى لتحويل سلسلة إلى عدد عشري في Java تتضمن استخدام تنسيق عشري الطبقة التي تنتمي إلى java.text طَرد. تسمح هذه الفئة بالتحكم الأكثر دقة في تنسيق وتحليل الأرقام العشرية ، بما في ذلك دعم تنسيقات الأرقام الخاصة بالإعدادات المحلية.

استخدم تنسيق عشري فئة توفر أ تحليل () طريقة تأخذ سلسلة كوسيطة وتعيد a رقم الهاتف هدف. يمكن بعد ذلك تحويل هذا الكائن إلى قيمة عائمة أولية:

import java.text.DecimalFormat;
import java.text.ParseException;

String str = "3,14";
DecimalFormat decimalFormat = new DecimalFormat();
Number number;
float floatNum = 0;
try {
    number = decimalFormat.parse(str);
    floatNum = number.floatValue();
} catch (ParseException e) {
    System.out.println("Invalid format: " + e.getMessage());
}
System.out.println("Converted float: " + floatNum);

في هذا المثال ، نقوم أولاً باستيراد الفئات الضرورية من ملف java.text طَرد. ثم نقوم بإنشاء ملف تنسيق عشري الكائن ، والذي سيسمح لنا بتحليل سلسلة الإدخال ، شارع، التي تحتوي على فاصل عشري خاص بالإعدادات المحلية. ال تحليل () يتم استدعاء الطريقة داخل كتلة try ، مع تخزين النتيجة في ملف رقم الهاتف هدف. أخيرًا ، نقوم بتحويل هذا الرقم إلى عدد عشري بدائي باستخدام floatValue () الطريقة ، وطباعة النتيجة على وحدة التحكم.

باختصار ، يعد تحويل سلسلة إلى عدد عشري مهمة أساسية في برمجة Java ، ومن الأهمية بمكان فهم الطرق والمكتبات والوظائف المختلفة التي تنطوي عليها عملية التحويل هذه. من خلال استكشاف Float.parseFloat () الطريقة والمناولة NumberFormatException، والاستفادة من قوة تنسيق عشري يمكن للمطورين تحويل السلاسل بشكل موثوق إلى قيم عددية وإنشاء تطبيقات Java قوية ومتعددة الاستخدامات.

الوظائف ذات الصلة: