آموزش سی شارپ

مباحث پایه سی شارپ

مباحث پیشرفه سی شارپ

دستورات سی شارپ

تبدیل نوع در سی شارپ – آموزش سی شارپ

  • سه شنبه ۲ مرداد ۱۳۹۷
  • بازدید ۳,۴۷۹ نفر

csharp type conversion 1813 تصویر

تبدیل نوع در سی شارپ

در این بخش از آموزش زبان سی شارپ به بررسی روش های تبدیل نوع در سی شارپ به یک دیگر خواهیم پرداخت. در مراجع مختلف ممکن است کار تبدیل انواع را با نام Type Casting نیز مشاهده کیند.

Type Casting دو شکل مختلف دارد:

  • تبدیل نوع به صورت Implicit: این نوع تبدیل ها به روش ایمن (type-safe) انجام می شود. برای مثال تبدیل نوع int به long و یا تبدیل یک کلاس مشتق شده به کلاس پایه.
  • تبدیل نوع به صورت Explicit: این نوع تبدیل ها با استفاده از توابع از پیش تعریف شده انجام می شود. تبدیل نوع به صورت Explicit نیاز به یک عملگر cast دارد.

مثال زیر نحوه تبدیل نوع به صورت explicit را نشان می دهد:

امتحان کنید

هنگامی که کد بالا کامال شده و اجرا شود، نتیجه ی زیر را تولید می کند:

متد های تبدیل نوع در سی شارپ

در زبان برنامه نویسی C# برای تبدیل انواع به یک دیگر می توانید از متد های درون ساخت (از پیش تعریف شده) استفاده کنید.

ردیفمتد و توضیحات
۱ToBoolean : یک نوع را به نوع boolean تبدیل می کند (اگر ممکن باشد).
۲ToByte : یک نوع را به نوع byte تبدیل می کند.
۳ToChar : یک نوع را به نوع char تبدیل می کند (اگر ممکن باشد).
۴ToDateTime : یک نوع (int یا string) را به نوع date-time تبدیل می کند.
۵ToDecimal : یک نوع int یا float را به نوع decimal تبدیل می کند.
۶ToDouble : یک نوع را به نوع double تبدیل می کند.
۷ToInt16 : یک نوع را به نوع int (16 بیتی) تبدیل می کند.
۸ToInt32 : یک نوع را به نوع int (32 بیتی) تبدیل می کند.
۹ToInt64 : یک نوع را به نوع int (64 بیتی) تبدیل می کند.
۱۰ToSbyte : یک نوع را به نوع signed byte تبدیل می کند.
۱۱ToSingle : یک نوع را به نوع float کوچک تبدیل می کند.
۱۲ToString : یک نوع را به نوع string تبدیل می کند.
۱۳ToType : یک نوع را به یک نوع مشخص شده تبدیل می کند.
۱۴ToUInt16 : یک نوع را به نوع int مثبت تبدیل می کند.
۱۵ToUInt32 : یک نوع را به نوع long مثبت تبدیل می کند.
۱۶ToUInt64 : یک نوع را به نوع int مثبت بزرگ تبدیل می کند.

مثال زیر چند نوع مختلف را به نوع string تبدیل می کند:

امتحان کنید

زمانی که کد بالا توسط کامپایلر سی شارپ کامپایل و اجرا شود، نتیجه زیر را تولید می کنید:

ثبت نظر
ریفریش کنید!
نظرات کاربران (۴ مورد)
  1. تصویر آواتار کاربر 0
    ولی علی نژاد پنجشنبه , 11 مهر

    برای تبدیل یک متغیر از نوع enum به نوع int و برعکس چیکار باید بکنیم؟

  2. تصویر آواتار کاربر 0
    بهرام دوشنبه , 20 مرداد

    با سلام خدمت شما ظاهرا اشتباهی پیش آمده چون وقتی که هر یک از فرامین لیست شده در جدول بالا را اجرا می کنیم پیغام خطا می دهد که متغیر فلان متد مورد نظز را ندارد و پیغامی مشابه زیر دیافت می کنیم : Error(s): (10:24) 'float' does not contain a definition for 'ToInt32' and no accessible extension method 'ToInt32' accepting a first argument of type 'float' could be found (are you missing a using directive or an assembly reference?)

    • تصویر آواتار کاربر 124
      AmRoدوشنبه , 20 مرداد

      سلام...اگه میتونید مشکلتونو به همراه کدی که نوشتین و کار نمیکنه...داخل انجمن سایت قرار بدین تا بررسی شه.