Menu
CoddyTech

Định dạng chuỗi

Thuộc phần Kiến thức nền tảng trong hành trình C# của Coddy. Bài học 63 trên 69.

Trong C#, String.Format() là một phương thức mạnh mẽ dùng để tạo chuỗi có định dạng. Phương thức này cho phép bạn kết hợp văn bản với các biến theo cách dễ đọc và có thể tùy chỉnh. Phương thức này dùng các chỉ định định dạng để xác định cách chèn biến vào chuỗi.

Hãy cùng học cách định dạng chuỗi (string formatting) trong C#:

Cú pháp cơ bản của String.Format() là:

string formattedString = String.Format("format_string", arg0, arg1, ...);

Trong đó:

  • format_string: Chuỗi chứa văn bản và các chỉ định định dạng.
  • arg0, arg1, ...: Các biến sẽ được chèn vào format_string.

Hãy cùng xem các chỉ định định dạng. Các số trong dấu ngoặc nhọn cho biết vị trí của các đối số:

  • {0}: Tham chiếu đến đối số thứ nhất (arg0)
  • {1}: Tham chiếu đến đối số thứ hai (arg1)
  • {2}: Tham chiếu đến đối số thứ ba (arg2)
  • Và cứ tiếp tục như vậy...

Hãy thử một ví dụ đơn giản với các kiểu đối số khác nhau:

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);

Sau khi chạy đoạn code này, bạn sẽ thấy trên màn hình: Name: Alice, Age: 30, Price: 19.99

Bạn cũng có thể kiểm soát định dạng kỹ hơn bằng các chỉ định định dạng đặt sau dấu hai chấm. Chỉ định định dạng gồm một chữ cái, chẳng hạn F cho số thập phân dấu phẩy cố định, theo sau là một số tùy chọn chỉ độ chính xác:

// Định dạng một số với 2 chữ số thập phân
double number = 123.4567;
string formatted = String.Format("The value is {0:F2}", number);
Console.WriteLine(formatted);

Sau khi chạy đoạn code này, bạn sẽ thấy trên màn hình: The value is 123.46

Bạn có thể dùng F1, F2, F3, v.v. để chỉ định số chữ số thập phân khác nhau

challenge icon

Thử thách

Dễ

Tạo một phương thức có tên CreateFormattedString nhận các đối số sau:

  1. Một chuỗi productName.
  2. Một số nguyên quantity.
  3. Một số thực unitPrice.

Phương thức này cần trả về một chuỗi đã định dạng, kết hợp các giá trị theo định dạng sau:

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

Định dạng unitPrice với năm chữ số thập phân, quantity với một chữ số thập phân (chuyển nó thành double), và viết hoa ký tự đầu tiên của productName.

Ví dụ, nếu productName là "laptop", quantity là 3 và unitPrice là 1299.9999, phương thức cần trả về:

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

Để trích xuất ký tự đầu tiên và giữ kiểu String thay vì kiểu char, hãy dùng: str.Substring(0,1)

Tự làm thử

using System;

public class Program {
    public static string CreateFormattedString(string productName, int quantity, double unitPrice) {
        // Viết code của bạn ở đây
    }

    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);
    }
}
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Kiến thức nền tảng

Tự luyện tập: Trình biên dịch C# online