Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C#

Cách tạo StringBuilder trong C#

StringBuilder trong C# cung cấp nhiều constructor để khởi tạo: chuỗi ban đầu, dung lượng, hoặc cả hai. Dưới đây là các ví dụ minh họa.

Ví dụ 1: Tạo từ chuỗi và so sánh tham chiếu

using System;
using System.Text;

public class Demo
{
    public static void Main(string[] args)
    {
        StringBuilder strBuilder1 = new StringBuilder("Tim");
        StringBuilder strBuilder2 = new StringBuilder("Tom");

        Console.WriteLine("StringBuilder1 có bằng StringBuilder2? = " + strBuilder1.Equals(strBuilder2));
    }
}

Kết quả

StringBuilder1 có bằng StringBuilder2? = False

Ví dụ 2: Các constructor khác nhau

using System;
using System.Text;

public class Demo
{
    public static void Main(string[] args)
    {
        StringBuilder strBuilder1 = new StringBuilder("John");
        StringBuilder strBuilder2 = new StringBuilder("John");
        StringBuilder strBuilder3 = new StringBuilder();
        StringBuilder strBuilder4 = new StringBuilder(5);

        strBuilder2 = strBuilder3; // Gán tham chiếu
        Console.WriteLine("StringBuilder3 có bằng StringBuilder2? = " + strBuilder3.Equals(strBuilder2));
        Console.WriteLine("Dung lượng StringBuilder1 = " + strBuilder1.Capacity);
        Console.WriteLine("Dung lượng StringBuilder2 = " + strBuilder2.Capacity);
        Console.WriteLine("Dung lượng StringBuilder3 = " + strBuilder3.Capacity);
        Console.WriteLine("Dung lượng StringBuilder4 = " + strBuilder4.Capacity);
    }
}

Kết quả

StringBuilder3 có bằng StringBuilder2? = True
Dung lượng StringBuilder1 = 16
Dung lượng StringBuilder2 = 16
Dung lượng StringBuilder3 = 16
Dung lượng StringBuilder4 = 5

Lưu ý: Equals trên StringBuilder so sánh tham chiếu (reference equality), không so sánh nội dung chuỗi. Để so sánh nội dung, hãy dùng strBuilder1.ToString() == strBuilder2.ToString().