Menu
Coddy logo textTech

String Formatting

Coddy Java 여정의 기초 섹션에 포함된 레슨 — 73개 중 69번째.

Java에서 String.format()은 형식화된 문자열을 생성하는 데 사용되는 강력한 메서드입니다. 이 메서드는 텍스트와 변수를 읽기 쉽고 사용자 지정 가능한 방식으로 결합할 수 있게 합니다. 이 메서드는 형식 지정자를 사용하여 변수가 문자열에 삽입되는 방식을 정의합니다.

String.format()의 기본 구문은:

String formattedString = String.format("format_string", arg1, arg2, ...);
  • format_string: 텍스트와 형식 지정자를 포함하는 문자열.
  • arg1, arg2, ...: format_string에 삽입될 변수들.

다음은 일반적인 형식 지정자입니다:

  • %s: 문자열을 삽입합니다.
  • %d: 10진수(정수)를 삽입합니다.
  • %f: 부동 소수점 숫자를 삽입합니다.
  • %b: 불리언 값을 삽입합니다.
  • %c: 문자를 삽입합니다.
  • %n: 개행 문자를 삽입합니다.

또한 형식을 더 세밀하게 제어할 수 있습니다:

  • %.2f: 부동소수점 숫자를 소수점 둘째 자리까지 형식화합니다.
  • %10s: 문자열을 10자 필드 내 오른쪽 정렬로 삽입합니다.
  • %-10s: 문자열을 삽입하며, 10자 필드 내에서 왼쪽 정렬합니다.
  • %03d: 정수를 삽입하며, 3자리 너비로 선행 0으로 패딩합니다.

다음은 예제입니다:

String name = "Alice";
int age = 30;
double price = 19.99;

String formatted = String.format("Name: %s, Age: %d, Price: %.2f", name, age, price);
System.out.println(formatted);
// Output: Name: Alice, Age: 30, Price: 19.99

이 예제에서 %sname으로, %dage으로, 그리고 %.2fprice으로 대체되며, 소수점 둘째 자리로 포맷됩니다.

challenge icon

챌린지

쉬움

createFormattedString이라는 이름을 가진 메서드를 생성하세요. 이 메서드는 다음 인수를 받습니다:

  1. 문자열 productName.
  2. 정수 quantity.
  3. double unitPrice.

이 메서드는 이러한 값을 다음 형식으로 결합한 형식화된 문자열을 반환해야 합니다:

Product: [productName], Quantity: [quantity], Unit Price: [unitPrice]

unitPrice를 소수점 다섯 자리로, quantity를 소수점 한 자리로 형식화하세요 (double로 변환).

예를 들어, productName이 "laptop", quantity가 3, unitPrice가 1299.9999인 경우, 메서드는 다음을 반환해야 합니다:

Product: laptop, Quantity: 3.0, Unit Price: 1299.99990

char 타입이 아닌 String 타입으로 유지하면서 첫 번째 문자를 추출하려면: str.substring(0,1)을 사용하세요.

치트 시트

String.format() 메서드는 형식 지정자를 사용하여 텍스트와 변수를 결합하여 형식화된 문자열을 생성합니다.

기본 구문:

String formattedString = String.format("format_string", arg1, arg2, ...);

일반적인 형식 지정자:

  • %s: 문자열
  • %d: 정수
  • %f: 부동소수점 숫자
  • %b: 불리언
  • %c: 문자
  • %n: 줄바꿈

형식 지정 옵션:

  • %.2f: 소수점 둘째 자리까지의 부동소수점
  • %10s: 10자 필드에 오른쪽 정렬된 문자열
  • %-10s: 10자 필드에 왼쪽 정렬된 문자열
  • %03d: 3자리까지 선행 0으로 패딩된 정수

예제:

String name = "Alice";
int age = 30;
double price = 19.99;

String formatted = String.format("Name: %s, Age: %d, Price: %.2f", name, age, price);
System.out.println(formatted);
// Output: Name: Alice, Age: 30, Price: 19.99

첫 번째 문자를 문자열로 추출하려면: str.substring(0,1)

직접 해보기

import java.util.Scanner;

public class Main {
    public static String createFormattedString(String productName, int quantity, double unitPrice) {
        // 여기에 코드를 작성하세요
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String product = scanner.nextLine();
        int qty = scanner.nextInt();
        double price = scanner.nextDouble();
        String formattedString = createFormattedString(product, qty, price);
        System.out.println(formattedString);
    }
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨