C# Căn Bản Toàn Tập part 9

Chia sẻ: Dqdsadasd Qwdasdsad | Ngày: | Loại File: PDF | Số trang:3

0
43
lượt xem
9
download

C# Căn Bản Toàn Tập part 9

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

An toàn kiểu (Type Safety) Quá trình chuyểu đổi kiểu (Type Conversions) Chúng ta thường chuyển đổi dữ liệu từ một kiểu sang kiểu khác thí dụ sau: byte value1 = 10; byte value2 = 23; byte total; total = value1 + value2;

Chủ đề:
Lưu

Nội dung Text: C# Căn Bản Toàn Tập part 9

  1. An toàn kiểu (Type Safety) Quá trình chuyểu đổi kiểu (Type Conversions) Chúng ta thường chuyển đổi dữ liệu từ một kiểu sang kiểu khác thí dụ sau: byte value1 = 10; byte value2 = 23; byte total; total = value1 + value2; Console.WriteLine(total); Implicit Conversions Chúng ta sẽ không có vấn đề gì khi thực hiện đoạn mã sau: byte value1 = 10; byte value2 = 23; long total; // đoạn sau sẽ biên dịch tốt total = value1 + value2; Console.WriteLine(total); Bảng sau hiển thị cách chuyển đổi kiểu implicit được hỗ trợ trong C#. From To sbyte short, int, long, float, double, decimal byte short, ushort, int, uint, long, ulong, float, double, decimal short int, long, float, double, decimal ushort int, uint, long, ulong, float, double, decimal int long, float, double, decimal uint long, ulong, float, double, decimal long, ulong float, double, decimal float double char ushort, int, uint, long, ulong, float, double, decimal Explicit Conversions
  2. • int to short – Có thể mất dữ liệu • int to uint –Có thể mất dữ liệu • uint to int –Có thể mất dữ liệu • float to int – Sẽ mất hết tất cả đằng sau dấu chấm thập phân • Any numeric type to char – Dữ liệu sẽ mất • decimal to any numeric type – Chỉ phần thập phân bên trong cấu trúc khác so với kiểu integers và floating-point numbers long val = 30000; int i = (int)val; // Giá trị hợp lệ. The maximum int is 2147483647 long val = 3000000000; int i = (int)val; // Giá trị không hợp lệ. The maximum int is 2147483647 Boxing and Unboxing Boxing là từ dùng để chỉ quá trình chuyển đổi từ một kiểu giá trị sangkiểu tham khảo và tương tự Unboxing thì ngược lại. Điều này rất hữu dụng trong C#. ví dụ sau đây sử dụng Boxing: using System; class BoxingDemo { public static void Main() { int i = 100; object o = i ; Console.WriteLine(" The object value = {0}" , i); } } Trên đây giá trị i kiểu int được chuyển thành một o kiểu object. Đoạn code sau sử dụng Unboxing , o thuộc kiểu đối tượng object được chuyển thành j kiểu int. int i = 20; object o = i; // Box the int int j = (int)o; // Unbox it back into an int ví dụ sau dùng Boxing và Unboxing long a = 333333423; object b = (object)a; int c = (int)b;
Đồng bộ tài khoản