Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 54 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
54
Dung lượng
1,62 MB
Nội dung
1. Cấu trúc chương trình C# 2. Kiểu dữ liệu, từ khoá, định danh biến, hằng… 3. Chuyển đổi kiểu 4. Console I/O 5. Tham số ref, out, param 6. Lệnh lặp for, while, do while, foreach 7. Lệnh phân nhánh switch, lệnh nhảy 8. Mảng 1 chiều, đa chiều 9. Kiểu enumeration 2 3 using <namespace s d ng> … namespace <Tên Namespace> { [Khóa truy xu t] class <Tên l p> { public static void Main() { … } // thành viên khác … } // l p khác … using <namespace s d ng> … namespace <Tên Namespace> { [Khóa truy xu t] class <Tên l p> { public static void Main() { … } // thành viên khác … } // l p khác … using: làm code gọn hơn, ko cần phải dùng tên của namspace using System. namespace của chương trình: ko bắt buộc class: tối thiểu có 1 lớp chứa hàm entry point Main của chương trình public static void Main(): hàm entry point của chương trình C# 4 Nếu ko có namespace ⇒ namespace mặc định ko tên Namespace có thể chứa: struct, interface, delegate, enum Trường hợp đơn giản nhất: 1 lớp, 1 file cs và namespace mặc định 5 Bao gồm Lớp đối tượng object ký tự char Chuỗi string Số nguyên có dấu sbyte, short, int, long Số nguyên không dấu byte, ushort, uint, ulong Số thực float, double, decimal Kiểu logic bool Alias của các lớp dữ liệu trong .NET s string System. S String i int System. I Int32 o object System. O Object 6 Sử dụng kiểu dữ liệu Định nghĩa trước (C#) Built-in : int, long, string, object… Chương trình định nghĩa Class, struct, enum… Person, Student, Employee… 7 Data Type Built-in Built-in User defined User defined ! ! Name Name CTS Type CTS Type Size Size Range Range sbyte System.SByte 8 -128 127 short System.Int16 16 (-32768 32767) int Sytem. Int32 32 -2 31 2 31 -1 long Sytem. Int64 64 -2 63 2 63 -1 byte System.SByte 8 0 255 ushort System.UInt16 16 (0 65535) uint System.UInt32 32 0 2 32 -1 ulong System.UInt64 64 0 2 64 -1 float System.Single 32 x p x t 3,4E - 38 đ n 3,4E+38ấ ỉ ừ ế double System.Double 64 1,7E-308 đ n 1,7E+308ế decimal System.Decimal 128 Có đ chính xác đ n 28 con sộ ế ố bool System.Boolean Ki u true/falseể char System.Char 16 Ký t unicodeự 8 " " object: Sytem.Object Kiểu dữ liệu gốc, cha của tất cả các kiểu dữ liệu trong C# object o = new object(); string: Sytem.String Chuỗi ký tự Unicode string s1 = “Hi”; string s2 = “Hi Hi “; string s = s1 + s2; 9 " " 10 [...]... bu c phải đư c gán giá trị l c khai báo Trị c a hằng c thể đư c tính toán vào l c biên dịch Hằng bao giờ c ng static 18 Constant Ưu điểm Chương trình dễ đ c, kh c ph c những con số “magic number” trong code Chương trình dễ sửa hơn Tránh lỗi dễ dàng hơn, trình biên dịch sẽ báo lỗi nếu gán lại giá trị cho hằng 19 Constant Minh họa sử dụng hằng Định nghĩa hằng 20 readonly const: phải đư c gán... đư c bắt đầu bằng chữ số Chuong_Trinh, x25, z, _abc, XửLý hợp lệ 2abc, Chuong-Trinh, Xu Ly, class không hợp lệ Phân biệt CHỮ HOA và chữ thường ChuongTrinh và chuongtrinh là kh c nhau C c định danh đư c khai báo trong c ng phạm vi (scope) không đư c trùng nhau Phải kh c với từ khóa (dùng “@” kh c ph c) 16 Keyword 17 Constant Một hằng là một biến nhưng trị không thay đổi const... vi (scope) Vị trí khai báo biến Đư c x c định bởi c p dấu { và } C thể chứa phạm vi nhỏ hơn Trong thân phương th c: biến c c bộ Trong thân lớp(trong class): thu c tính Biến trong C# chỉ c t c dụng trong phạm vi mà nó đư c khai báo 23 Type cast Ép kiểu: chuyển giá trị từ kiểu này sang kiểu kh c Ví dụ Chuyển từ int qua float và ngư c lại C hai loại Ép kiểu ngầm định (implicit... Để đ c ký tự văn bản từ c a sổ console Console.Read() giá trị trả về là int Console.ReadLine() giá trị trả về là string Để xuất chuỗi ký tự dùng Console.Write() / Console.WriteLine() 29 Console I/O Console.WriteLine() \n: ký tự xuống dòng 30 Console I/O / F5 Đ c chuỗi Xuất chuỗi Chờ đ c 1 dòng, m c đích là dừng màn hình 31 Boxing & Unboxing Kiểu giá trị c thể đư c chuyển thành kiểu đối tượng... Unboxing 32 checked & unchecked throws OverFlowException 33 ref, out, param ref: tương tự như truyền tham chiếu trong C/ C++ Từ khoá ref phải đư c dùng l c gọi hàm C c tham số truyền dạng ref phải đư c khởi tạo giá trị trư c sử dụng ref cho tham số khi gọi hàm Khai báo ref trư c kiểu dữ liệu 34 ref, out, param out: tương tự như ref Kh c ref là ko c n khởi tạo giá trị trư c khi truyền Dùng trư c tham... "Hello"; object o = s; string s2 = (string)o; 27 Using Convert class Thường dùng khi c n chuyển đổi giữa c c kiểu không c liên hệ với nhau Convert.toDataType(SourceValue) Ví dụ: chuyển từ chuỗi sang số th c string s1 = "56.8"; string s2 = "95"; double x = Convert.ToDouble(s1); // x = 56.8 int i = Convert.ToInt32(s2); // i = 95 byte j = Convert.ToByte(x); // j = 56, ít dùng 28 Console I/O Để đ c ký tự... loại theo c ch th c lưu trữ dữ liệu Data type Value type Reference type int num; long count; Object obj = new Object(); String str = “reference type”; 11 Value Type Chứa giá trị tr c tiếp Không thể null Phải chứa giá trị x c định Bao gồm Primitive type int i = 59; double x = 7.83; int a = i; double, char, int, float Enum struct i 59 x 7.83 a 59 12 Reference type Chỉ tới nơi chứa dữ... type-cast) Ép kiểu chỉ định (explicit type-cast) 24 Implicit type cast Do C# tự th c hiện Không c n lập trình viên can thiệp Xảy ra khi Ép từ kiểu nhỏ qua kiểu lớn Ép từ lớp dẫn xuất qua lớp c sở int i = 59; double x = i; string s = "Hello"; object o = s; 25 Implicit type-cast From To sbyte short, int, long, float, double, decimal byte short, ushort, int, uint, long, ulong, float, double, decimal... trị khi khai báo const readonly: ko c n khởi tạo trư c, khi gán giá trị thì sau đó ko thay đổi đư c readonly Chưa đư c khởi gán Ko đư c thay đổi 21 Variable Biến là nơi lưu dữ liệu c a chương trình Dữ liệu c a biến Nằm trong bộ nhớ vật lý (physical RAM) C thể thay đổi giá trị Phải khai báo trư c khi dùng Identifier: tên để đại diện cho biến Data type: dạng lưu trữ dữ liệu c a biến Data... liệu C thể null null: không chỉ tới bất kỳ đâu Bao gồm Lớp (class) string s1 = "Hello"; string s2 = "Bye"; string s3; s3 = s1; s1 "Hello" string, object Giao diện (interface) Mảng (array) Đại diện (delegate) s3 s2 "Bye" 13 Value type vs Reference type Characteristic Value type Variable hold Value Reference type Reference Allocated Stack Heap Default Zero Null Parameter Copy value Copy . System. namespace c a chương trình: ko bắt bu c class: tối thiểu c 1 lớp chứa hàm entry point Main c a chương trình public static void Main(): hàm entry point c a chương trình C# 4 Nếu. bu c phải đư c gán giá trị l c khai báo Trị c a hằng c thể đư c tính toán vào l c biên dịch Hằng bao giờ c ng static 18 , , Ưu điểm Chương trình dễ đ c, kh c ph c những. z, _abc, XửLý hợp lệ 2abc, Chuong-Trinh, Xu Ly, class không hợp lệ Phân biệt CHỮ HOA và chữ thường ChuongTrinh và chuongtrinh là kh c nhau C c định danh đư c khai báo trong c ng phạm