Преобразование double в String на Java — все способы с примерами

Превратить дробное число в строку можно теми же четырьмя способами, что и int.

Пример 1: double в строку через valueOf()

Самый рекомендуемый способ.

class Main {
  public static void main(String[] args) {

    // create double variable
    double num1 = 36.33;
    double num2 = 99.99;

    // convert double to string
    // using valueOf()
    String str1 = String.valueOf(num1);
    String str2 = String.valueOf(num2);

    // print string variables
    System.out.println(str1);    // 36.33
    System.out.println(str2);    // 99.99
  }
}

Вывод:

36.33
99.99

Совет

String.valueOf() — наиболее предпочтительный способ превратить double в строку.

Пример 2: double в строку через toString()

Метод Double.toString() делает то же самое.

class Main {
  public static void main(String[] args) {

    // create double variables
    double num1 = 4.76;
    double num2 = 786.56;

    // convert double to string
    // using toString()
    String str1 = Double.toString(num1);
    String str2 = Double.toString(num2);

    // print string variables
    System.out.println(str1);    // 4.76
    System.out.println(str2);    // 786.56
  }
}

Вывод:

4.76
786.56

Метод toString() класса-обёртки Double принимает дробное число и возвращает его текстовое представление.

Пример 3: double в строку через оператор +

Конкатенация с пустой строкой работает и для double.

class Main {
  public static void main(String[] args) {

    // create double variables
    double num1 = 347.6D;
    double num2 = 86.56D;

    // convert double to string
    // using + sign
    String str1 = "" + num1;
    String str2 = "" + num2;

    // print string variables
    System.out.println(str1);    // 347.6
    System.out.println(str2);    // 86.56
  }
}

Вывод:

347.6
86.56

Оператор + со строкой превращает второй операнд (число) в строку и склеивает их.

Пример 4: double в строку через format()

Спецификатор %f форматирует дробное число.

class Main {
  public static void main(String[] args) {

    // create a double variable
    double num = 99.99;

    // convert double to string using format()
    String str = String.format("%f", num);

    System.out.println(str);    // 99.990000
  }
}

Вывод:

99.990000

Примечание

По умолчанию %f выводит дробное число с шестью знаками после точки. Чтобы получить именно 99.99, используйте формат %.2f.