Type casting là chuyển đổi từ một kiểu dữ liệu sang kiểu khác. Có hai dạng:
- Implicit conversion (Ép kiểu ngầm): C# tự động thực hiện an toàn kiểu. Ví dụ: từ kiểu nhỏ sang lớn (
int → long), từ derived class sang base class. - Explicit conversion (Ép kiểu tường minh): Người lập trình thực hiện qua cast operator. Cần khi có thể mất dữ liệu hoặc thất bại tại runtime (
double → int,base → derived).
Các phương thức chuyển đổi tích hợp (trong class Convert):
| STT | Phương thức & Mô tả |
|---|---|
| 1 | ToBoolean: Chuyển sang Boolean. |
| 2 | ToByte: Chuyển sang Byte. |
| 3 | ToChar: Chuyển sang Char (Unicode). |
| 4 | ToDateTime: Chuyển sang DateTime. |
| 5 | ToDecimal: Chuyển sang Decimal. |
| 6 | ToDouble: Chuyển sang Double. |
| 7 | ToInt32 / ToInt64: Chuyển sang Int/Long. |
| 8 | ToString: Chuyển sang String. |
Ví dụ: Chuyển int sang string
using System;
namespace Demo
{
class Program
{
static void Main(string[] args)
{
int i = 20;
Console.WriteLine(i.ToString()); // "20"
Console.ReadKey();
}
}
}
Kết quả
20
Mẹo: Ưu tiên TryParse (int.TryParse) cho chuyển đổi an toàn từ string thay vì Parse ném exception.