آموزش مفهوم enum در سی شارپ
مفهوم Enum در سی شارپ چیست؟ Enum ها چه کاربردی در سی شارپ و در برنامه نویسی دارند. لطفا اگر ممکنه با مثال توضیح بدید.
آموزش مفهوم enum در سی شارپ
داده های شمارشی یا Enum ها یکی از انواع داده هایی هستند که شما به عنوان برنامه نویس می توانید از آنها استفاده کنید. داده های شمارشی یا Enum ها کلاس های مخصوصی هستند که یک گروه از مقادیر را قبول می کنند.
برای درک بهتر Enum ها یک مثال رو با هم انجام می دهیم. فرض کنید می خواهید لیست ایام هفته را داشته باشید و در برخی از قسمتهای کد استفاده کنید. شما برای این کار میتونید به راحتی یک داده مخصوص ایجاد کنید که مقادیر ان شامل ایام هفته باشد. دقت کنید که برای تعریف یک Enum از کلمه کلیدی enum استفاده می شود.
enum Week
{
Sun, Mon, Tue, Wed, Thu, Fri, Sat
};
در این مثال یک Enum به نام Week ایجاد کردیم. مقادیری که برای این داده شمارشی تعریف کردیم را هم مشاهده می کنید. حالا در هر قسمتی از کد که نیاز به نام هفته داشته باشیم میتوانیم به راحتی از این داده شمارشی استفاده کنیم.
Console.WriteLine(Enum_Name.Sun);
Console.WriteLine(Enum_Name.Mon);
//Result
Sun
Mon
هنگام استفاده از Enum ها می توانیم شماره ایندکس Enum را هم داشته باشیم. به عنوان مثال در Enum که ما تعریف کردیم Sun برابر با 0 و Mon برابر با 1 می باشد.
Console.WriteLine((int) Enum_Name.Sun);
Console.WriteLine((int) Enum_Name.Mon);
//Result
0
1
برای درک بهتر Enum ها یک مثل دیگر را هم می بینیم:
class Program
{
enum Level
{
Low,
Medium,
High
}
static void Main(string[] args)
{
Level myVar = Level.Medium;
Console.WriteLine(myVar);
}
}
//Result
Medium
تعریف Enum با مقدار پیش فرض
شما میتوانید برای داده های شمارشی خود مقدار پیش فرض هم تعریف کنید و در خروجی کدهای خود از مقدار پیش فرض استفاده کنید.
enum Season
{
Spring = 1,
Summer = 2,
Autumn = 3,
Winter = 4
}
حالا اگر از این داده شمارشی استفاده کنیم اعداد 1 و 2 و 3 و 4 در خروجی خواهیم داشت.
Enumeration types
- آموزش استفاده از SignalR در Asp.net Core با مثال عملی
- ادغام چند گزارش استیمول سافت بصورت پی دی اف در یک فایل
- نحوه تغییر استایل کامپوننت select2 چگونه است ؟
- چگونه امنیت پروژه را در Asp.net Core افزایش دهیم ؟
- ارسال پارامتر در دستور window.open جی کویری
- ارسال پارامتر از طریق جاوااسکریپت با کلیک روی تگ a
- خطای 500 زمان اجرا شدن پروژه روی هاست
- کویری نویسی در استیمول سافت جهت فیلتر اطلاعات
- نمایش صفحه در پنجره جدید با کلیک روی لینک (تگ a) در Asp
- افزودن مقادیر به صورت دستی به List دریافت شده از ریپازیتوری
- مشکل تاریخ شمسی در سی شارپ
- نمایش گزارش stimulsoft روی کلاینت
- تفاوت های سی شارپ 8 با نسخه های قبلی چیه؟
- انتخاب چند سطر دلخواه توسط چک باکس در DataGrid و محاسبه جمع سطرهای انتخاب شده
- نمایش نوتیفکیشن در سی شارپ
- ارسال پارامتر از سی شارپ به استیمول سافت
- عدم نمایش عکس در دیتاگرید ویو در wpf
- Library Animation برای کنترلهای WPF
- مشکل در تغییر مقدار Text کنترل RibbonBar در کامپوننت DevExpress
- قرار دادن مقادیر ارسالی یک ستون از جدول به صورت سطری در استیمول