string a = "1";
string b = "4";
string kq = a + b;
Console.WriteLine(kq);
Console.Read();
Qua ví dụ nay ta thấy điều gì ? vì kết quả đã in ra là 14, đúng ra là bằng 5
Trong C#, có nhiều cách để chuyển đổi kiểu dữ liệu, bao gồm: ép kiểu tường minh, ép kiểu ngầm định, sử dụng lớp hỗ trợ (Convert), và phương thức Parse/TryParse. Dưới đây là một số cách phổ biến
Chỉ áp dụng khi không có mất mát dữ liệu, thường xảy ra giữa các kiểu số nguyên và số thực.
int a = 10;
double b = a; // Chuyển int thành double (tự động)
Console.WriteLine(b); // Output: 10.0
Cần thực hiện thủ công bằng dấu ngoặc đơn, có thể gây mất dữ liệu.
double x = 9.7;
int y = (int)x; // Chuyển double thành int (mất phần thập phân)
Console.WriteLine(y); // Output: 9
Cung cấp các phương thức để chuyển đổi kiểu dữ liệu một cách an toàn.
string s = "123";
int number = Convert.ToInt32(s);
Console.WriteLine(number); // Output: 123
Convert.ToInt32(value) → Chuyển sang int
Convert.ToDouble(value) → Chuyển sang double
Convert.ToBoolean(value) → Chuyển sang bool
Convert.ToString(value) → Chuyển sang string
Dùng để chuyển đổi từ string sang kiểu số. Nếu chuỗi không hợp lệ, chương trình sẽ báo lỗi (FormatException).
string s = "456";
int num = int.Parse(s);
Console.WriteLine(num); // Output: 456
Giúp tránh lỗi bằng cách kiểm tra trước khi chuyển đổi. Nếu không thành công, trả về false thay vì báo lỗi.
string s = "789a";
if (int.TryParse(s, out int result))
{
Console.WriteLine(result);
}
else
{
Console.WriteLine("Chuyển đổi thất bại!"); // Output: Chuyển đổi thất bại!
}
Dùng cho kiểu tham chiếu.
object obj = "Hello";
string str = obj as string; // Chuyển object thành string
if (str != null)
{
Console.WriteLine(str); // Output: Hello
}
object obj = 123;
if (obj is int n)
{
Console.WriteLine(n); // Output: 123
}
Hầu hết các kiểu dữ liệu đều có phương thức ToString() để chuyển thành chuỗi.
int num = 100;
string str = num.ToString();
Console.WriteLine(str); // Output: "100"
Tìm kiếm:
Ép kiểu trong c# là gì, tại sao nên ép kiểu khi làm phần mềm trong C#