Преобразование double в строку в Java

Сегодня мы рассмотрим различные способы преобразования типа данных double в строку в Java. Преобразование double в строку в Java можно выполнить несколькими способами, и мы рассмотрим их поочередно с примерами кода.

Посмотрим на различные фрагменты кода для преобразования типа данных double в строку в Java. Обратите внимание, что double является примитивным типом данных, в то время как Double – это объект. Однако в Java поддерживается автоупаковка, так что в большинстве случаев они могут использоваться взаимозаменяемо.

Преобразование Double в строку в Java

Рассмотрим различные фрагменты кода для преобразования типа данных double в строку в Java.

  1. Использование оператора +

    Это самый простой способ преобразования double в строку в Java.

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

    Мы можем использовать метод класса Double toString для получения строкового представления числа с плавающей запятой в десятичном формате. Ниже приведен фрагмент кода, демонстрирующий его использование для преобразования числа с плавающей запятой в строку в Java.

    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); // str - '123.456'
    
  4. new Double(double l)

    Конструктор Double с аргументом типа double устарел в Java 9, но вам следует это знать.

    double d = 123.45d;
    // устарело с Java 9, используйте valueOf для лучшей производительности
    String str = Double.valueOf(d).toString();
    System.out.println(str);
    
  5. String.format()

    Мы можем использовать метод форматирования строк Java для преобразования double в String в наших программах.

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

    Мы можем использовать класс DecimalFormat для преобразования double в String. Мы также можем получить строковое представление с указанным количеством десятичных знаков и округлением половину вверх.

    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); // округлено до 2 десятичных знаков
    System.out.println(str); //str is '123.45'
    str = new DecimalFormat("#.0#").format(123.456); // округлено до 2 десятичных знаков
    System.out.println(str); //str is '123.46'
    
  7. StringBuilder, StringBuffer

    Мы можем использовать функцию append классов StringBuilder и StringBuffer для преобразования double в строку.

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

Пример преобразования Java Double в String

Вот простая программа, в которой мы будем преобразовывать double в строку и выводить ее с использованием всех различных методов, которые мы видели выше.

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);
	}

}

Это всё, что касается преобразования double в строку в программе на Java. Ссылка: Документация по API Double

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