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

Java에서 format() 메서드로 double 값을 문자열로 변환하는 방법

String.format() 메서드는 형식 문자열(format string)과 가변 인수(varargs)를 받아, 지정된 형식에 맞게 변환된 String 객체를 반환합니다.

이 메서드를 활용하면 double 값을 손쉽게 문자열로 변환할 수 있습니다. 형식 지정자로 "%f"를 전달하고, 함께 변환할 double 값을 인수로 넘기면 됩니다.

예제 1: Scanner로 입력받은 값 변환하기

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

예제 2: 고정된 값 변환하기

public class Sample{
    public static void main(String args[]){
        double val = 22588.336;
        String str = String.format("%f", val);
        System.out.println(str);
    }
}

실행 결과

22588.336000

참고: 소수점 자릿수 조절하기

%f는 기본적으로 소수점 이하 6자리까지 표시합니다(위 예제의 22588.336000처럼 뒤에 0이 채워짐). 소수점 자릿수를 직접 지정하고 싶다면 %.2f와 같이 형식 지정자에 원하는 자릿수를 명시하면 됩니다.

String str = String.format("%.2f", 22588.336);
System.out.println(str); // 출력: 22588.34

이처럼 String.format() 메서드를 사용하면 별도의 변환 로직 없이도 double 값을 원하는 형식의 문자열로 깔끔하게 처리할 수 있습니다.