تسرد هذه المقالة عدة طرق:
1. استخدم java.math.BigDecimal
2. استخدم java.text.DecimalFormat
3. استخدم java.text.NumberFormat
4. استخدم java.util.Formatter
5. استخدم String.format
في نهاية المقالة ، شاركت المزيد من معرفة التوسع معك. بالإضافة إلى ذلك ، يمكنك تنفيذها بنفسك أو استعارة مكتبة الفصل المغلفة لتنفيذها. لن أدرجها واحدة تلو الأخرى في هذه المقالة. دعنا نلقي نظرة على المقدمة التفصيلية أدناه.
1. استخدم BigDecimal واحتفظ بالأماكن العشرية
تنسيق السلسلة الثابتة العامة (قيمة مزدوجة) {bigDecimal Bd = new BigDecimal (value) ؛ bd = bd.setscale (2 ، oundingmode.half_up) ؛ إرجاع bd.tostring () ؛}2. استخدم DecimalFormat للاحتفاظ بالمكانين العشري
تنسيق السلسلة الثابتة العامة 2 (قيمة مزدوجة) {decimalformat df = new decimalformat ("0.00") ؛ df.setRoundingMode (RoundingMode.half_up) ؛ إرجاع df.format (القيمة) ؛}3. استخدم رقم Numberformat للاحتفاظ بالأماكن العشرية
تنسيق السلسلة الثابتة العامة 3 (قيمة مزدوجة) {numberformat nf = numberFormat.getNumberInstance () ؛ nf.setmaximfractionDigits (2) ؛ / * * setMinimUmfractionDigits إلى 2 * * إذا لم تقم بذلك ، فحينئذٍ تكون قيمة القيمة 100.00 ، إرجاع 100 * * بدلاً من 100.00 */ nf.setMinimUmfractionDigits (2) ؛ nf.setRoundingMode (RoundingMode.half_up) ؛ / * * إذا تم فصل التنسيق الذي تريد الإخراج بواسطة الفواصل ، فيمكنك تعيينه على True */ nf.setGroupingused (false) ؛ إرجاع nf.format (القيمة) ؛}4. استخدم java.util.formatter واحتفظ بالأماكن العشرية
تنسيق السلسلة الثابتة العامة (القيمة المزدوجة) { / * * ٪ .2f ٪ يعني أي رقم قبل النقطة العشرية 2. النتيجة بعد تنسيق عشري هي f. نوع النقطة العائمة هو */ إرجاع تنسيق جديد ().5. استخدم String.Format لتنفيذها.
تنسيق السلسلة الثابتة العامة (قيمة مزدوجة) {return string.format ("٪. 2f" ، القيمة) .ToString () ؛}المعرفة الممتدة
كأداة لمعالجة النص ، توفر لنا String.format وظائف تنسيق سلسلة قوية وغنية.
تنسيق أرقام النقطة العائمة
تنسيق العنصر النائب هو: ٪ [الفهرس $] [تحديد]*[الحد الأدنى عرض] [. الدقة]
double num = 123.4567899 ؛ system.out.print (string.format ("٪ f ٪ n" ، num)) ؛ // 123.456790 system.out.print (string.format ("٪ a ٪ n" ، num)) ؛ // 0x1.edd3c0bb46929p6 system.out.print (string.format ("٪ g ٪ n" ، num)) ؛ // 123.457معرفات متوفرة:
-، لا يمكن استخدام اليسار المحاذاة ضمن الحد الأدنى للعرض ، مع علامة 0.
0. إذا كان طول المحتوى أقل من الحد الأدنى للعرض ، املأه بـ 0 على اليسار.
#، أضف 0 قبل المهندس وسداسي عشري ، أضف 0x قبل سداسي عشري.
+ ، النتيجة تحتوي دائمًا على علامة + أو -.
مساحة ، أضف مساحة قبل الأرقام الإيجابية ، وأضفها قبل الأرقام السلبية.
، ، يستخدم فقط مع عشري ، مفصولة كل 3 أرقام.
(، إذا كانت النتيجة عبارة عن رقم سالب ، فلفه بين قوسين ولا يتم عرض أي رموز.
المحولات المتاحة:
B ، نوع Boolean ، طالما أن المعلمة الفعلية هي نوع منطقي غير صحيح ، يتم تنسيقه كسلسلة صحيحة ، وإلا فهو سلسلة خاطئة.
يمكن أيضًا الحصول على حرف NewLine NewLine المستقلة عن النظام الأساسي من خلال System.getProperty ("line.separator").
و ، نوع نقطة العائمة (عشرية). يعرض 9 أعداد كبيرة وسيتم تقريبها. مثل 99.99.
A ، نوع رقم النقطة العائمة (سداسي عشري).
ه ، النوع الأسي. مثل 9.38e+5.
G ، نوع رقم النقطة العائمة (أقصر من ٪ F ، ٪ A ، يعرض أرقامًا سارية المكونة من 6 أرقام ، وسيتم تقريبها)
لخص
ما سبق هو المحتوى الكامل لطرق الكتابة المتعددة لمكانين عشريين تم الاحتفاظ بهما في جافا. آمل أن يكون محتوى هذه المقالة مفيدًا لبعض المساعدة في دراسة أو عمل الجميع. إذا كان لديك أي أسئلة ، فيمكنك ترك رسالة للتواصل.