Java String.format

Ziggy Stardust·2024년 10월 22일
0

정수형을 문자열로 만들때 특정 형태를 따르게 해야할 때가 있습니다.
시간 같은 경우 9시 이하의 경우 왼쪽에 0이 패딩으로 들어갈 때가 그 예입니다.

Java 에선 String.format 을 통해 쉽게 다룰 수 있습니다.


    public String parseSecToRegularTime(int sec) {
        String mm = String.format("%02d", (int) sec / 60);
        String ss = String.format("%02d", sec % 60);
        return mm + ":" + ss;
    }

기본 형식

String.format("포맷 문자열",1,2, ...)
  • 포맷 문자열 안에 형식 지정자를 넣고, 뒤에 오는 값들(값1, 값2 등)이 형식에 맞춰 채워집니다.

주요 형식 지정자

  1. 정수 (%d)
  • 정수를 출력할 때 사용합니다.
  • 예시: String.format("정수: %d", 42) → "정수: 42"
  1. 실수 (%f)
  • 소수점이 있는 실수를 출력할 때 사용합니다.
  • 예시: String.format("실수: %.2f", 3.14159) → "실수: 3.14"
    (%.2f는 소수점 이하 2자리까지 출력)
  1. 문자열 (%s)
  • 문자열을 출력할 때 사용합니다.
  • 예시: String.format("문자열: %s", "hello") → "문자열: hello"
  1. 문자 (%c)
  • 단일 문자를 출력할 때 사용합니다.
  • 예시: String.format("문자: %c", 'A') → "문자: A"
  1. 16진수 (%x, %X)
  • 정수를 16진수로 출력할 때 사용합니다.
  • %x: 소문자로 출력.
  • %X: 대문자로 출력.
  • 예시: String.format("16진수: %x", 255) → "16진수: ff"
  1. 부호 있는 정수 (%+d)
  • 정수 앞에 항상 부호를 출력합니다.
  • 예시: String.format("부호: %+d", 42) → "부호: +42"
  1. 고정 너비 및 패딩
  • 숫자나 문자열을 고정된 너비로 출력하고, 빈 자리는 공백이나 0으로 채웁니다.
  • 예시: String.format("고정 너비: %5d", 42) → " 42"
    (5자리 너비, 앞쪽 공백 채움)
  • 예시: String.format("패딩: %05d", 42) → "00042"
    (5자리 너비, 앞쪽 0 채움)
String formattedString = String.format("이름: %s, 나이: %d, 키: %.1f", "John", 30, 175.5);
System.out.println(formattedString);
// 출력: "이름: John, 나이: 30, 키: 175.5"
profile
spider from mars

0개의 댓글