Converter double para String em Java

Hoje veremos diferentes maneiras de converter um double em uma string em Java. A conversão de double para string em Java pode ser feita de várias maneiras, vamos passar por elas uma por uma com exemplos de código.

Java Converter Double para String

Vamos observar diferentes trechos de código para a conversão de double para string em Java. Note que double é um tipo de dado primitivo enquanto Double é um Objeto. No entanto, Java suporta autoboxing, então ambos podem ser usados de forma intercambiável na maioria dos casos.

  1. Usando o operador +

    Esta é a maneira mais fácil de converter um double em uma string em Java.

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

    Pode-se usar o método toString da classe Double para obter a representação em string de um número decimal. O trecho de código abaixo mostra como utilizá-lo para converter um número double em string em Java.

    double d = 123.45d;
    String str = Double.toString(d);
    System.out.println(str); // imprime '123.45'
    
  3. String.valueOf()

    double d = 123.456d;
    String str = String.valueOf(d); // str é '123.456'
    
  4. new Double(double l)

    O construtor Double com argumento double foi descontinuado no Java 9, mas você deve saber disso.

    double d = 123.45d;
    // descontinuado a partir do Java 9, use valueOf para melhor desempenho
    String str = String.valueOf(d);
    System.out.println(str);
    
  5. String.format()

    Pode-se usar o método String format do Java para converter double em String em nossos programas.

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

    Pode-se usar a classe DecimalFormat para converter double em String. Também podemos obter a representação de string com casas decimais especificadas e arredondamento para cima.

    double d = 123.454d;
    String str = DecimalFormat.getNumberInstance().format(d);
    System.out.println(str); //str é '123.454'
    //se você não quiser formatação
    str = new DecimalFormat("#.0#").format(d); // arredondado para 2 casas decimais
    System.out.println(str); //str é '123.45'
    str = new DecimalFormat("#.0#").format(123.456); // arredondado para 2 casas decimais
    System.out.println(str); //str é '123.46'
    
  7. StringBuilder, StringBuffer

    Nós podemos usar a função append de StringBuilder e StringBuffer para converter double em string.

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

Exemplo de Conversão de Double para String em Java

Aqui está um programa simples onde vamos converter double em string e imprimi-lo usando todos os métodos diferentes que vimos acima.

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

		// descontinuado a partir do Java 9, use valueOf para melhor desempenho
		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);
	}

}

Isso é tudo para converter double em string em um programa Java. Referência: Documentação da API Double

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