تبدیل متغیرها به هم در .NET Core
یکی از ویژگیهای قدرتمند .NET Core قابلیت تبدیل انواع داده به یکدیگر است. این ویژگی در برنامهنویسی برای مدیریت سادهتر دادهها و جلوگیری از خطاهای احتمالی بسیار مفید است.
تبدیل ضمنی (Implicit Conversion)
تبدیل ضمنی زمانی رخ میدهد که داده بدون نیاز به دستور خاصی از یک نوع به نوع دیگر تبدیل شود. این نوع تبدیل معمولاً زمانی امکانپذیر است که احتمال از دست رفتن دقت داده وجود نداشته باشد. مثال:
int a = 10; double b = a; // تبدیل ضمنی از int به double
در اینجا، مقدار عدد صحیح به عدد اعشاری تبدیل میشود بدون اینکه برنامهنویس نیاز به انجام عملیات خاصی داشته باشد.
لیست انواع دادهها با قابلیت تبدیل ضمنی
- Byte → Short، Int، Long، Float، Double، Decimal
- Int → Long، Float، Double، Decimal
- Char → Int، Long، Float، Double
- Float → Double
تبدیل صریح (Explicit Conversion)
بر خلاف تبدیل ضمنی، تبدیل صریح زمانی رخ میدهد که احتمال از دست رفتن داده (مانند دقت) وجود داشته باشد و نیازمند دستور خاصی است. برای انجام این نوع تبدیل از عملگر (type) استفاده میشود. مثال:
double a = 10.5; int b = (int)a; // تبدیل صریح از double به int
در اینجا، مقداری که دارای اعشار بود به عدد صحیح تبدیل شد و بخش اعشار آن حذف گردید.
لیست انواع دادهها با قابلیت تبدیل صریح
- Double → Float، Long، Int، Short، Byte
- Decimal → Double، Long، Int، Short، Byte
- Long → Int، Short، Byte
- Int → Short، Byte
استفاده از کلاسهای کمکی برای تبدیل
علاوه بر تبدیل صریح و ضمنی، در .NET Core میتوان از کلاسهایی نظیر Convert و Parse استفاده کرد. مثال:
string number = "123"; int result = int.Parse(number); // تبدیل string به int با استفاده از Parse
این روش زمانی مفید است که داده در قالب رشته باشد و نیاز به تبدیل به نوع دیگر داشته باشیم.
نکته مهم
همیشه هنگام انجام تبدیل نوع دادهها مراقب از دست دادن دقت یا تولید خطا باشید. برخی از تبدیلها ممکن است باعث ایجاد خطا شوند، مخصوصاً در تبدیلهای صریح.