intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

GIỚI THIỆU C# (tt)

Chia sẻ: Le Van Anh | Ngày: | Loại File: PPT | Số trang:38

182
lượt xem
53
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Value Type: Là những kiểu dữ liệu cơ sở được map trực tiếp vào FCL như int32 được map vào System.Int32 hoặc double được map vào System.double

Chủ đề:
Lưu

Nội dung Text: GIỚI THIỆU C# (tt)

  1. Ớ   Ệ C (t G I ITH I U   # t ) G V:Phạm   nh  ương   A Ph Em ai:paphuong@ fthcm unsedu. l  i. . vn
  2. C hủ  đề Val Type    er ue  & Ref ence  Type Boxi &   nboxi ng  U ng G i it ệu ớp  rng ớ  hi l Sti G i it ệu ớp  rngBuider ớ  hi l Sti l G i it ệu ớp  r ayLi t ớ  hi l A r s Các  ạng  i og d D al Steam  Luồng  ữ i u) r ( d lệ  
  3. Val Type  ue  and  ef ence  R er Type Value Type: Là những kiểu dữ liệu cơ sở được map trực tiếp vào FCL như int32 được map vào System.Int32 hoặc double được map vào System.double Giá trị Value Type được lưu trữ trên stack và lớp được kế thừa từ System.ValueType Ví dụ: Int x = 10; Double y = 30.2; System.ValueType a = 30;
  4. Val Type  ue  and  ef ence  R er Type Reference Type Biến được cấp phát trên vùng nhớ Heap. Tất cả các lớp trong thư viện .NET hoặc do người dùng tạo ra đều là Reference Type. Dùng toán tử new để cấp phát vùng nhớ. Ví dụ:  Object a = new ArrayList();  CHocSinh hs = new CHocSinh();
  5. Boxi &  nboxi ng  U ng Boxing: Ép từ Value Type to Reference Type Ví dụ: Int32 x = 10; object o = x ; // Implicit boxing Console.WriteLine("The Object o = {0}",o); // prints out 10 //----------------------------------------------------------- Int32 x = 10; object o = (object) x; // Explicit Boxing Console.WriteLine("The object o = {0}",o); // prints out 10
  6. Boxi &  nboxi ng  U ng U ng:Ép ừ Ref ence    nboxi   t   er Type ang  ue  s Val Type V ídụ:   Int32 x = 5; // declaring Int32 Int64 y = 0; // declaring Int64 double object o = x; // Implicit Boxing y = (Int64)o; // Explicit boxing to double Console.WriteLine("y={0}",y);
  7. G i it ệu ớp  rng ớ  hi l Sti N am espace:Sys em   t D ùng   hể  ện  ạng  ỗitong N ET để t hi d chu  r . B ấtcứ hao ác  lên    t t nào i quan  n  ỗit s   đế chu  a ẽ dùng ớp  l s rng   ưu r   xử ý. ti để l tữ và  l V ídụ:   s rng t  “H elo  ord”; ti s r=  lW l
  8. G i it ệu ớp  rng ớ  hi l Sti Các hàm và property Tên Ý nghĩa Length Lấy chiều dài chuỗi Char [index] Truy xuất đến kí tự thứ index. Index trong chuỗi được đánh thứ tự từ 0. = Copy = (string).Clone() Copy Bool .Contains() Kiểm tra tồn tại chuỗi lấy từ tham số có trong chuỗi hiện thời. Int IndexOf() Trả về chỉ số vị trí chuỗi tìm thấy. Nếu tìm thấy, trả về vị trí; ngược lại trả về -1 Bool IndexOfAny (char[]) Kiểm tra sự tồn tại của bất kì phần tử trong mảng kí tự tham số.
  9. G i it ệu ớp  rng ớ  hi l Sti Tên Ý nghĩa Remove(int vitri, int sokitu) Xóa số kí tự từ vị trí xác định trong chuỗi. Replace() Thay thế chuỗi Split Cắt chuỗi dựa trên kí tự cho trước. SubString() Lấy chuỗi con (Sinh viên dùng thư viện MSDN để tra cứu thêm các hàm khác cũng như xem ví dụ mẫu của từng hàm)
  10. G i it ệu ớp  rng ớ  hi l Sti Ví dụ 1 : In ra từng kí tự trong chuỗi string str = “Hello World”; for(int j = 0; j < str.Length; j ++) Console.WriteLine (str[j]); Ví dụ 2 : Copy chuỗi string str1 = “Hello World”; string str2 = str1; string str3 = (string) str1.Clone();
  11. G i it ệu ớp  rng ớ  hi l Sti Ví dụ 3: Kiểm tra tồn tại 1 chuỗi con string str = “Hello World”; int vitri = str.IndexOf (“World”); // vitri = 6 int vitri = str.IndexOf (“Test”); // vitri = -1 : do không tìm thấy “Test” Ví dụ 4: Kiểm tra tồn tại 1 kí tự bất kì string email = “helloworld@yahoo.com”; if (email.IndexOfAny (new char[]{‘@’, ‘.’)) MessageBox.Show (“Có”); else MessageBox.Show (“Không”);
  12. G i it ệu ớp  rng ớ  hi l Sti Ví dụ 5: Xóa chuỗi kí tự string str = “abc---def”; Console.WriteLine("1/ {0}", s) Console.WriteLine("2/ {0}", s.Remove(3)) Console.WriteLine("3/ {0}", s.Remove(3, 3)) Kết quả: Index: 012345678 1) abc---def 2) abc 3) abcdef
  13. G i it ệu ớp  rng ớ  hi l Sti Ví dụ 6: Tách chuỗi string str = “,ONE, ,TWO,,”; string[] sep = new string[]{“,”}; string arr[] = str.Split(sep, StringSplitOptions.None); string arr1[] = str.Split(sep, StringSplitOptions.RemoveEmptyEntries); Kết quả: arr chứa 3 phần tử ,,,, arr1 chứa 2 phần tử ,
  14. G i it ệu ớp  rng ớ  hi l Sti Ví dụ 7: Thay thế chuỗi string str = “hello world”; string res = str.Replace(“world”, “Lan”); Kết quả: res có kết quả là “hello Lan” Ví dụ 8: Lấy chuỗi con string str = “hello world”; string res = str.SubString(0, 2); Kết quả: res có kết quả là “he”
  15. G i it ệu ớp  rng ớ  hi l Sti Ví dụ 7: Gán đường dẫn string str = “D:\\Thu muc 1\\Thu muc 2”; Hoặc string str = @”D:\Thu muc 1\Thu muc 2”; Ví dụ 8: Khởi tạo định dạng chuỗi int x = 10, y = 20; string str = string.Format(“{0} + {1} = {2}”,x,y, x+ y); //str = “10 + 20 = 30”
  16. G i it ệu ớp  rngBuider ớ  hi l Sti l Namespace: System.Text Khi thao tác trên chuỗi có sử dụng thường xuyên các hàm Replace, Insert, Append thì ta nên sử dụng StringBuilder thay vì dùng string để tăng tốc độ xử lý. Các hàm phổ biến: Replace, Insert, Append
  17. G i it ệu ớp  rngBuider ớ  hi l Sti l Ví dụ : Thay thế chuỗi StringBuilder sb = new StringBuilder(“Hello”); sb.Replace (“e”, “aaa”); //sb = “Haaallo” sb.Insert(1,”KKK”); //sb = “HaKKKaallo” string res = sb.ToString(); //res = “Haaallo”
  18. G i it ệu ớp  r ớ  hi l Ar ayLi st Namespace: System.Collections Dùng để thể hiện mảng 1 chiều của bất kì lọai dữ liệu nào vì ArrayList thao tác trên lớp cơ sở Object.  Ví dụ: ArrayList arr = new ArrayList(); arr.Add(1); arr.Add(2); ArrayList dsHS = new ArrayList(); dsHS.Add (new CHocSinh(“Lan”)); dsHS.Add (new CHocSinh(“Diep”));
  19. G i it ệu ớp  r ớ  hi l Ar ayLi st Các hàm và property Tên Ý nghĩa Count Đếm số phần tử trong mảng Obect [index] Truy xuất đến đối tượng thứ index. Index trong chuỗi được đánh thứ tự từ 0. Add(Object) Thêm vào 1 đối tượng trong mảng Clear() Xóa tất cả các phần tử trong mảng Clone() Copy Contains(Object) Kiểm tra đối tượng tồn tại trong mảng Int IndexOf(object) Trả về chỉ số vị trí object tìm thấy. Nếu tìm thấy, trả về vị trí; ngược lại trả về -1 Insert(int vitri, object) Chèn 1 đối tượng vào 1 vị trí trong mảng RemoveAt(int vitri) Xóa phần tự tại vị trí cho trước ToArray(Type) Copy sang 1 mảng mới Array Sort Thực hiện sắp xếp
  20. G i it ệu ớp  r ớ  hi l Ar ayLi st Ví dụ 1: Thêm và lấy phần tử dạng Value Type ArrayList dsDiem = new ArrayList(); dsDiem.Add(1); dsDiem.Add(2); dsDiem.Add(3); for (int j = 0; j < dsDiem.Count; j ++) { int item = (int) dsDiem[j]; Console.WriteLine (item); }
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2