Java تحويل double إلى String

اليوم سنرى طرقًا مختلفة لتحويل النوع double إلى سلسلة في جافا. يمكن تحويل double إلى سلسلة في جافا بعدة طرق، وسنتناولها واحدة تلو الأخرى مع أمثلة لشفرات الكود.

تحويل double إلى سلسلة في جافا

دعونا نلقي نظرة على شفرات الكود المختلفة لتحويل double إلى سلسلة في جافا. يرجى ملاحظة أن double هو نوع بيانات أساسي بينما Double هو كائن. ومع ذلك، جافا تدعم التعبئة التلقائية، لذا يمكن استخدامهما متبادلين في معظم الحالات.

  1. استخدام عامل الجمع (+)

    هذه هي أسهل طريقة لتحويل double إلى سلسلة في جافا.

    double d = 123.45d;
    String str = d+""; // str is '123.45'
    
  2. Double.toString()

    يمكننا استخدام طريقة toString في فئة Double للحصول على التمثيل النصي للرقم العشري. يوضح المقتطف البرمجي أدناه كيفية استخدامها لتحويل الرقم العشري إلى سلسلة نصية في جافا.

    double d = 123.45d;
    String str = Double.toString(d);
    System.out.println(str); // يطبع '123.45'
    
  3. String.valueOf()

    double d = 123.456d;
    String str = String.valueOf(d); // السلسلة '123.456'
    
  4. new Double(double l)

    تمت إهمال مُنشئ Double بمعامل double في جافا 9، ولكن يجب أن تعرف ذلك.

    double d = 123.45d;
    // تمت إهماله في جافا 9، استخدم valueOf لأداء أفضل
    String str = new Double(d).toString();
    System.out.println(str);
    
  5. String.format()

    يمكننا استخدام طريقة تنسيق السلسلة في جافا لتحويل الأعداد العشرية إلى سلسلة في برامجنا.

    double d = 36.98d;
    String s = String.format("%f", d);
    System.out.println(s); //36.980000
    
  6. DecimalFormat

    يمكننا استخدام فئة DecimalFormat لتحويل الأعداد العشرية إلى سلسلة. يمكننا أيضًا الحصول على تمثيل سلسلة بعدد محدد من الأماكن العشرية والتقريب إلى الأقرب.

    double d = 123.454d;
    String str = DecimalFormat.getNumberInstance().format(d);
    System.out.println(str); //str is '123.454'
    //if you don't want formatting
    str = new DecimalFormat("#.0#").format(d); // rounded to 2 decimal places
    System.out.println(str); //str is '123.45'
    str = new DecimalFormat("#.0#").format(123.456); // rounded to 2 decimal places
    System.out.println(str); //str is '123.46'
    
  7. StringBuilder، StringBuffer

    يمكننا استخدام وظيفة الإلحاق في StringBuilder وStringBuffer لتحويل الأعداد الثنائية إلى سلسلة نصية.

    double d = 123.45d;
    String str = new StringBuilder().append(d).toString();
    

مثال Java Double إلى String

إليك برنامج بسيط حيث سنقوم بتحويل الأعداد الثنائية إلى سلسلة نصية وطباعتها باستخدام جميع الطرق المختلفة التي رأيناها أعلاه.

package com.journaldev.string;

import java.text.DecimalFormat;

public class JavaDoubleToString {

	public static void main(String[] args) {
		double d = 123.45d;
		String str = Double.toString(d);
		System.out.println(str);

		str = String.valueOf(d);
		System.out.println(str);

		// تم تجاهله اعتباراً من Java 9، استخدم valueOf لتحسين الأداء
		str = new Double(d).toString();
		System.out.println(str);

		str = String.format("%f", d);
		System.out.println(str); //123.450000

		str = d + "";
		System.out.println(str);

		str = DecimalFormat.getNumberInstance().format(d);
		System.out.println(str);

		str = new DecimalFormat("#.0#").format(d);
		System.out.println(str);

		str = new StringBuilder().append(d).toString();
		System.out.println(str);
	}

}

هذا كل شيء بالنسبة لتحويل الرقم عشري إلى سلسلة في برنامج Java. المرجع: مستندات واجهة برمجة تطبيقات Double

Source:
https://www.digitalocean.com/community/tutorials/java-convert-double-to-string