문자열 포매팅
Coddy C# 여정의 기초 섹션에 포함된 레슨 — 69개 중 63번째.
C#에서 String.Format()은 형식화된 문자열을 만드는 데 사용되는 강력한 메서드입니다. 이 메서드를 사용하면 읽기 쉽고 사용자 정의 가능한 방식으로 텍스트와 변수를 결합할 수 있습니다. 이 메서드는 형식 지정자를 사용하여 변수가 문자열에 삽입되는 방식을 정의합니다.
C#에서 문자열 포매팅을 사용하는 방법을 알아봅시다:
String.Format()의 기본 구문은 다음과 같습니다:
string formattedString = String.Format("format_string", arg0, arg1, ...);여기서:
format_string: 텍스트와 형식 지정자를 포함하는 문자열입니다.arg0, arg1, ...:format_string에 삽입될 변수들입니다.
형식 지정자를 살펴봅시다. 중괄호 안의 숫자는 인수의 위치를 나타냅니다:
{0}: 첫 번째 인자(arg0)를 참조합니다{1}: 두 번째 인자(arg1)를 참조합니다{2}: 세 번째 인자(arg2)를 참조합니다- 기타 등등...
다양한 유형의 인수를 사용하는 간단한 예제를 살펴보겠습니다:
string name = "Alice";
int age = 30;
double price = 19.99;
string formatted = String.Format("Name: {0}, Age: {1}, Price: {2}", name, age, price);
Console.WriteLine(formatted);이 코드를 실행하면 화면에 다음과 같이 표시됩니다: Name: Alice, Age: 30, Price: 19.99
콜론 뒤에 형식 지정자를 사용하여 서식을 더 자세히 제어할 수도 있습니다. 형식 지정자는 문자(고정 소수점의 경우 F와 같은)와 그 뒤에 오는 정밀도를 나타내는 선택적 숫자로 구성됩니다:
// 숫자를 소수점 둘째 자리까지 서식 지정
double number = 123.4567;
string formatted = String.Format("The value is {0:F2}", number);
Console.WriteLine(formatted);이 코드를 실행하면 화면에 다음과 같이 표시됩니다: The value is 123.46
F1, F2, F3 등을 사용하여 서로 다른 소수점 자릿수를 지정할 수 있습니다.
챌린지
쉬움다음 인수를 받는 CreateFormattedString이라는 메서드를 생성하세요:
- 문자열
productName. - 정수
quantity. - double형
unitPrice.
메서드는 다음 형식으로 이러한 값들을 결합한 포맷된 문자열을 반환해야 합니다:
Product: [productName], Quantity: [quantity], Unit Price: [unitPrice]unitPrice는 소수점 다섯째 자리까지, quantity는 소수점 첫째 자리까지(double형으로 변환) 포맷하고, productName의 첫 글자는 대문자여야 합니다.
예를 들어, productName이 "laptop"이고, quantity가 3이며, unitPrice가 1299.9999인 경우, 메서드는 다음을 반환해야 합니다:
Product: Laptop, Quantity: 3.0, Unit Price: 1299.99990char 타입이 아닌 String 타입을 유지하면서 첫 글자를 추출하려면
str.Substring(0,1)을 사용하세요.
치트 시트
String.Format() 메서드는 형식 지정자를 사용하여 텍스트와 변수를 결합함으로써 형식화된 문자열을 생성합니다.
기본 구문:
string formattedString = String.Format("format_string", arg0, arg1, ...);형식 지정자는 위치 번호와 함께 중괄호를 사용합니다:
{0}: 첫 번째 인수{1}: 두 번째 인수{2}: 세 번째 인수
다양한 데이터 형식을 사용한 예제:
string name = "Alice";
int age = 30;
double price = 19.99;
string formatted = String.Format("Name: {0}, Age: {1}, Price: {2}", name, age, price);
Console.WriteLine(formatted); // 출력: Name: Alice, Age: 30, Price: 19.99콜론을 사용한 정밀도 제어 형식 지정자:
double number = 123.4567;
string formatted = String.Format("The value is {0:F2}", number);
Console.WriteLine(formatted); // 출력: The value is 123.46F1, F2, F3 등을 사용하여 소수점 자릿수를 다르게 지정할 수 있습니다.
첫 번째 문자를 문자열로 추출하려면: str.Substring(0,1)
직접 해보기
using System;
public class Program {
public static string CreateFormattedString(string productName, int quantity, double unitPrice) {
// 여기에 코드를 작성하세요
}
public static void Main(string[] args) {
string product = Console.ReadLine();
int qty = int.Parse(Console.ReadLine());
double price = double.Parse(Console.ReadLine());
string formattedString = CreateFormattedString(product, qty, price);
Console.WriteLine(formattedString);
}
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.