VieTopik
Tiếng HànTiếng AnhIT
  • Góc học tập
Tải app
  • Thư viện
  • Luyện thi
  • Cẩm nang
  • Góc học tập
C# CoreDữ liệu
Bài 7/19
5 phút

String

Nội dung bài · 5 mục
  1. 1.Khái niệm
  2. 2.Ví dụ
  3. 3.Thử ngay
  4. 4.Lỗi hay gặp
  5. 5.Tóm tắt

Tên sản phẩm, email khách, nội dung hoá đơn đều là chữ. Chương trình nào cũng phải ghép, cắt, tìm và so sánh chữ. Bài này giới thiệu kiểu string và những thao tác dùng hằng ngày.

Khái niệm

🔤 String: chuỗi ký tự đặt trong dấu nháy kép, ví dụ "Bút bi".

💬 String interpolation: cách chèn giá trị vào chuỗi bằng dấu $ đứng trước và cặp ngoặc { } bên trong.

Ví dụ

string name = "  Bút bi Thiên Long  ";
decimal price = 5000m;

string clean = name.Trim();
Console.WriteLine(clean);          // Bút bi Thiên Long
Console.WriteLine(clean.Length);   // 17
Console.WriteLine(clean.ToUpper());
// BÚT BI THIÊN LONG

Console.WriteLine($"{clean} giá {price}đ");
  • Gọi thao tác trên chuỗi bằng dấu chấm: name.Trim().
  • $"{clean} giá {price}đ" thay {clean} và {price} bằng giá trị của biến. Viết vậy gọn hơn nối bằng +.

Những thao tác hay dùng:

Thao tác Kết quả
s.Length số ký tự
s.Trim() bỏ khoảng trắng hai đầu
s.ToUpper(), s.ToLower() viết hoa, viết thường
s.Contains("bi") có chứa chuỗi con không (bool)
s.Replace("a", "b") thay chuỗi con
s.Substring(0, 3) cắt từ vị trí 0, lấy 3 ký tự

Thử ngay

Dán vào Program.cs rồi chạy dotnet run:

string code = "pen-01";
code.ToUpper();
Console.WriteLine(code);

string upper = code.ToUpper();
Console.WriteLine(upper);

Đoán trước khi chạy: dòng in đầu tiên là pen-01 hay PEN-01?

Xem kết quả
pen-01
PEN-01

String không sửa được sau khi tạo. ToUpper() không đổi code mà trả về một chuỗi mới. Muốn dùng kết quả thì phải gán nó vào một biến.

Lỗi hay gặp

Quên dấu $. Thiếu $ thì {name} được in ra nguyên văn.

// SAI — in ra: Xin chào {name}
string name = "An";
Console.WriteLine("Xin chào {name}");
// ĐÚNG — in ra: Xin chào An
string name = "An";
Console.WriteLine($"Xin chào {name}");

So sánh mà quên để ý chữ hoa, chữ thường. == coi "Admin" và "admin" là khác nhau.

// SAI — false dù người dùng gõ đúng chữ
string role = "Admin";
Console.WriteLine(role == "admin");
// ĐÚNG — so sánh không phân biệt hoa thường
string role = "Admin";
Console.WriteLine(string.Equals(
    role, "admin", StringComparison.OrdinalIgnoreCase));

Tóm tắt

  • String đặt trong nháy kép, thao tác qua dấu chấm: s.Trim(), s.Length.
  • $"...{bien}..." chèn giá trị vào chuỗi.
  • String không sửa được. ToUpper(), Trim(), Replace() đều trả về chuỗi mới, phải gán lại mới dùng được.
  • == phân biệt hoa thường.

Tự kiểm tra

0/3 câu
Câu 1

string email = " an@shop.vn "; email.Trim(); Console.WriteLine(email.Length); In ra gì?

Câu 2

int qty = 3; Dòng nào in ra đúng "Còn 3 cái"?

Câu 3

Bạn cần kiểm tra tên sản phẩm có chứa chữ "sale" hay không. Dùng thao tác nào?

MethodArray và List

Nội dung bài

  1. 1.Khái niệm
  2. 2.Ví dụ
  3. 3.Thử ngay
  4. 4.Lỗi hay gặp
  5. 5.Tóm tắt