Ở bài học này mình sẽ trình bày chi tiết hơn về kiểu chuỗi ký tự trong C# thông qua lớp String. Trong lớp String này có những phương thức nào có thể sử dụng để khai báo thay thế cho kiểu string
hay không, chúng ta sẽ cùng đi tìm hiểu trong bài viết ngày hôm nay nhé !
Lớp String trong C#
Trong các ví dụ của các bài trước. Mình thỉnh thoảng đã khai báo các chuỗi ký tự trong các ví dụ đó. Kiểu chuỗi ký tự là một kiểu không thể thiếu trong mỗi ngôn ngữ lập trình. Mọi những thứ được in ra trên màn hình là một chuỗi ký tự, dữ liệu người dùng nhập vào cũng là một chuỗi ký tự, chỉ 2 điều này thôi cũng có thể nói ra được tầm quan trọng của nó. Thông thường khi chúng ta sử dụng một chuỗi ký tự chúng ta thường khai báo theo cú pháp sau đây:
string <tên biến> [= <chuỗi ký tự khởi tạo>];
Hoặc khi chúng ta bắt đầu tiếp xúc với lớp String chúng ta có thể khai báo như sau:
String <tên biến> = new String([mảng ký tự khởi tạo]);
Lưu ý: Các vị trí được đặt trong cặp ngoặc <>
sẽ là phần bắt buộc phải có khi khai báo, còn các phần nằm trong cặp ngoặc []
thì thành phần đó có thể có có thể không khi khai báo. Các giá trị chuỗi ký tự khởi tạo đều phải được nằm trong cặp ngoặc ""
.
Ví dụ về cách khai báo chuỗi ký tự:
string s = "Lap trinh khong kho !";
Các phương thức và thuộc tính có trong lớp String
Trong lớp String sẽ có một số phương thức và thuộc tính được Microsoft hỗ trợ sẵn tiêu biểu như thuộc tính Length
, phương thức Substring
…. Mình sẽ trình bày cho các bạn chi tiết về một số các phương thức và thuộc tính có trong lớp String.
Thuộc tính Length
Không cần nói cũng biết thuộc tính Length
dùng để lấy độ dài của chuỗi ký tự bên trong nó. Ví dụ:
using System.IO; using System; namespace luyencodec_ { class Program { static void Main() { string s = "LTKK"; Console.WriteLine(s.Length); Console.ReadKey(); // dừng màn hình } } }
Chương trình này cho ra kết quả:
4
Dễ dàng thấy rằng độ dài của string s
là 4 vậy nên khi lấy giá trị của thuộc tính Length
sẽ cho ra kết quả là 4.
Phương thức Concat
Phương thức Concat được sử dụng với 2 chuỗi ký tự, khi sử dụng phương thức này sẽ trả về kết quả là chuỗi ký tự thứ nhất thêm chuỗi ký tự thứ 2 vào cuối của chuỗi ký tự thứ nhất. Cú pháp như sau:
String.Concat(<chuỗi ký tự 1>, <chuỗi ký tự 2>);
Ví dụ khi sử dụng phương thức Concat:
using System.IO; using System; namespace luyencodec_ { class Program { static void Main() { string s = "LTKK"; string b = " nguyenvanhieu.vn"; s = String.Concat(s, b); Console.WriteLine(s); Console.ReadKey(); // dừng màn hình } } }
Chương trình này sẽ cho ra kết quả:
LTKK nguyenvanhieu.vn
Chúng ta có thể dễ dàng nhìn thấy chuỗi ký tự b
đã được thêm vào cuối của chuỗi ký tự s
.
Phương thức Insert
Khi chúng ta đã có thể thêm một chuỗi ký tự khác vào chuỗi ban đầu thì giờ chúng ta muốn thêm một chuỗi ký tự khác vào một vị trí trong chuỗi ký tự ban đầu thì sao. Chúng ta đã có phương thức Insert. Cú pháp sử dụng phương thức này như sau:
<chuỗi bị chèn>.Insert(<vị trí chèn vào>, <chuỗi ký tự chèn vào>);
Phương thức này trả về một chuỗi mới sau khi chuỗi chèn vào được chèn vào vị trí. Cho dễ hiểu ta xét ví dụ như sau:
using System.IO; using System; namespace luyencodec_ { class Program { static void Main() { string s1 = "Lap trinh khong kho", s2 = "123"; s1 = s1.Insert(0, s2); Console.WriteLine(s1); Console.ReadKey(); // dừng màn hình } } }
Chương trình này cho ra kết quả:
123Lap trinh khong kho
Các bạn nên nhớ: Các vị trí trong một chuỗi ký tự, hay sau này là mảng, đều sẽ bắt đầu từ vị trí số 0 vậy nên khi chúng ta chèn vào vị trí 0 thì phương thức Insert sẽ chèn vào vị trí đầu tiên của chuỗi ký tự. Các bạn có thể chạy lại ví dụ trên với vị trí chèn là các vị trí khác để có thể thấy rõ sự thay đổi.
Phương thức IsNullOrEmpty
Phương thức IsNullOrEmpty là phương thức sử dụng để kiểm tra xem chuỗi ký tự đó có là chuỗi ký tự rỗng hay không (tức không có chữ cái nào trong chuỗi ""
). Chúng ta có thể dễ dàng sử dụng với cú pháp như sau:
String.IsNullOrEmpty(<chuỗi ký tự>);
Phương thức này sẽ trả về true
nếu chuỗi ký tự đó rỗng và ngược lại nếu có bất kỳ chữ cái nào xuất hiện trong chuỗi ký tự đó phương thức sẽ trả về false
. Phần này không quá khó để hiểu nên mình sẽ không liệt kê ví dụ ở đây. Các bạn hãy cố gắng thử tự sử dụng phương thức này nhé !
Phương thức Split
Phương thức Split sẽ phân tách các ký tự ra tạo thành các chuỗi ký tự riêng biệt, phương thức này sẽ trả về một mảng chuỗi ký tự. Điều khác biệt là giá trị trả về của phương thức này vẫn sẽ có bao gồm các chuỗi rỗng tương đương cho ký tự phân cách (separator character). Phương thức này sẽ loại bỏ hoàn toàn các ô chuỗi rỗng này khi trả về khi chúng ta thêm một options là StringSplitOptions.RemoveEmptyEntries
. Cú pháp sử dụng phương thức Split như sau:
<chuỗi cần tách>.Split(<ký tự phân cách>, <options>);
Ví dụ đoạn chuỗi sau khi tách được mình ra với chương trình như sau:
using System.IO; using System; namespace luyencodec_ { class Program { static void Main() { string[] s = "Lap trinh khong kho".Split(' '); for (int i = 0; i < s.Length; ++i) { Console.WriteLine(s[i]); } Console.ReadKey(); // dừng màn hình } } }
Chương trình cho ra kết quả
Lap trinh khong kho
Phương thức Substring
Phương thức này để lấy một đoạn con từ vị trí x tới vị trí x+y trong một chuỗi ký tự. Cú pháp để sử dụng phương thức Substring như sau:
<chuỗi ký tự>.Substring(<vị trí>, <số lượng ký tự tiếp theo>);
Lưu ý: Các phần tử trong chuỗi ký tự được gọi bắt đầu từ vị trí 0 tới độ dài của chuỗi đó -1.
Ví dụ:
using System.IO; using System; namespace luyencodec_ { class Program { static void Main() { string s = "nguyenLTKKvanhieu.vn"; string b = s.Substring(6, 4); Console.WriteLine(b); Console.ReadKey(); // dừng màn hình } } }
Chương trình cho ra kết quả:
LTKK
Các bạn có thể thấy chữ 'L'
nằm ở vị trí số 6 tính từ vị trí 0 nên mình đã lấy 4 chữ cái từ vị trí số 6 tới vị trí số 10 tạo thành chuỗi "LTKK"
.
Tổng kết
Như vậy là trong bài viết ngày hôm nay mình đã trình bày cho các bạn về những phương thức cơ bản của lớp String cũng như là thuộc tính Length. Ở bài tiếp theo mình sẽ trình bày cho các bạn những phương thức để có thể xử lý cũng như chuẩn hóa chuỗi trong C# như là xóa khoảng trắng thừa, viết hoa chữ cái đầu tiên …. Cảm ơn các bạn đã đọc bài viết này. Hãy tiếp tục đồng hành cùng Lập trình không khó trong các bài viết tiếp theo nhé !
(ngoài ra các bạn có thể tham khảo thêm tài liệu trên trang chủ của Microsoft tại đây)
Để lại một bình luận