Computer >> 컴퓨터 >  >> 프로그래밍 >> Java

Java에서 Double을 String으로 변환하는 4가지 방법

Java에서는 Double 값을 String으로 변환할 수 있는 다양한 메소드를 제공합니다. 이 글에서는 가장 많이 사용되는 네 가지 변환 방법과 각각의 예제 코드를 살펴보겠습니다.

1. Double 클래스의 toString() 메소드

toString() 메소드는 현재 Double 객체의 문자열 표현을 반환합니다. 이 메소드를 사용하여 Double 값을 String으로 변환하는 절차는 다음과 같습니다.

  • 필요한 기본형(primitive) double 값을 Double 클래스 참조 변수에 담습니다. (오토박싱이 자동으로 일어납니다.)
  • toString() 메소드를 호출하여 String으로 변환합니다.

참고: double 값을 toString() 메소드에 직접 전달할 수도 있습니다.

예제

import java.util.Scanner;
public class ConversionOfDouble {
    public static void main(String args[]) {
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter a double value:");
        Double d = sc.nextDouble();
        String result = d.toString();
        System.out.println("The result is: "+result);
        System.out.println(Double.toString(d));
    }
}

실행 결과

Enter a double value:
2548.2325
The result is: 2548.2325
2548.2325

2. String 클래스의 valueOf() 메소드

valueOf() 메소드는 char, char 배열, double, float, int, long 또는 객체를 매개변수로 받아 해당 값의 String 표현을 반환합니다. 이 메소드로 Double 값을 String으로 변환하려면 다음과 같이 합니다.

  • double 값을 준비합니다.
  • 해당 값을 매개변수로 전달하고 반환되는 String 값을 받습니다.

예제

import java.util.Scanner;
public class ConversionOfDouble {
    public static void main(String args[]) {
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter a double value:");
        Double d = sc.nextDouble();
        String result = String.valueOf(d);
        System.out.println("The result is: "+result);
    }
}

실행 결과

Enter a double value:
2548.2325
The result is: 2548.2325

3. String 클래스의 format() 메소드

format() 메소드는 형식 문자열(format string)과 가변 인자(varargs)를 받아, 지정된 형식에 맞게 변환된 String 객체를 반환합니다. 이 메소드로 Double 값을 String으로 변환하려면 다음과 같이 합니다.

  • double 값을 준비합니다.
  • 형식 문자열 "%f"와 함께 double 값을 전달하여 format() 메소드를 호출합니다.

예제

import java.util.Scanner;
public class ConversionOfDouble {
    public static void main(String args[]) {
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter a double value:");
        double d = sc.nextDouble();
        String result = String.format("%f", d);
        System.out.println("The result is: "+result);
    }
}

실행 결과

Enter a double value:
2548.2325
The result is: 2548.2325

4. StringBuilder 또는 StringBuffer의 append() 메소드

StringBuilder 또는 StringBuffer 객체의 append() 메소드는 boolean, char, char 배열, double, float, int, long, String 등의 값을 매개변수로 받아 현재 객체에 추가합니다.

  • double 값을 준비합니다.
  • append() 메소드를 사용해 StringBuffer 객체에 값을 추가합니다.
  • toString() 메소드를 호출하여 StringBuffer 객체의 문자열 값을 얻습니다.

예제

import java.util.Scanner;
public class ConversionOfDouble {
    public static void main(String args[]) {
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter a double value:");
        double d = sc.nextDouble();
        StringBuffer sb = new StringBuffer();
        sb.append(d);
        String result = sb.toString();
        System.out.println("The result is: "+result);
    }
}

실행 결과

Enter a double value:
2548.2325
The result is: 2548.2325

마무리

지금까지 Java에서 Double 값을 String으로 변환하는 대표적인 네 가지 방법을 알아보았습니다. 단순한 변환에는 toString()이나 valueOf()가 적합하고, 소수점 자릿수 등 출력 형식을 지정해야 한다면 format()을, 문자열 조립 과정에서 변환이 필요하다면 append()를 활용하는 것이 좋습니다. 상황에 맞는 방법을 선택하여 코드의 가독성과 효율성을 높여 보세요.