Convertir double a String en Java

Hoy veremos diferentes formas de convertir un double a una cadena en Java. La conversión de double a string en Java se puede hacer de muchas maneras, las repasaremos una por una con ejemplos de código.

Java Convertir Double a String

Veamos diferentes fragmentos de código para la conversión de double a string en Java. Ten en cuenta que double es un tipo de dato primitivo mientras que Double es un objeto. Sin embargo, Java admite autoboxing, por lo que ambos se pueden utilizar indistintamente en la mayoría de los casos.

  1. Usando el operador +

    Esta es la forma más sencilla de convertir un double a una cadena en Java.

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

    Podemos usar el método toString de la clase Double para obtener la representación en forma de cadena de un double con decimales. A continuación, se muestra un fragmento de código que le enseña cómo utilizarlo para convertir un double en una cadena en 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 es '123.456'
    
  4. nuevo Double(double l)

    El constructor de Double con argumento double ha sido marcado como obsoleto en Java 9, pero debes saberlo.

    double d = 123.45d;
    // marcado como obsoleto desde Java 9, usa valueOf para un mejor rendimiento
    String str = Double.valueOf(d).toString();
    System.out.println(str);
    
  5. String.format()

    Podemos usar el método format de String en Java para convertir double a String en nuestros programas.

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

    Podemos usar la clase DecimalFormat para convertir double a String. También podemos obtener una representación de cadena con un número especificado de decimales y redondeo hacia arriba.

    double d = 123.454d;
    String str = DecimalFormat.getNumberInstance().format(d);
    System.out.println(str); //str es '123.454'
    //si no deseas formato
    str = new DecimalFormat("#.0#").format(d); // redondeado a 2 decimales
    System.out.println(str); //str es '123.45'
    str = new DecimalFormat("#.0#").format(123.456); // redondeado a 2 decimales
    System.out.println(str); //str es '123.46'
    
  7. StringBuilder, StringBuffer

    Podemos usar la función append de StringBuilder y StringBuffer para convertir double a cadena.

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

Ejemplo de Conversión de Double a String en Java

Aquí hay un programa simple donde convertiremos double a string y lo imprimiremos usando todos los diferentes métodos que vimos anteriormente.

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

		// obsoleto desde Java 9, usa valueOf para un mejor rendimiento
		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);
	}

}

Esto es todo para convertir un double a una cadena en un programa Java. Referencia: Documentación de la API de Double

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