စာရင်းကောက်အမျိုးအစားတစ်ခုမှ အများဆုံးတန်ဖိုးကို ရယူခြင်းသည် ဆော့ဖ်ဝဲရေးသားသူများ ကြုံတွေ့ရလေ့ရှိသည့် အလုပ်တစ်ခုဖြစ်သည်။ အသုံးပြုသူထည့်သွင်းမှုကို အတည်ပြုရန် သို့မဟုတ် enum တန်ဖိုးအပေါ်အခြေခံ၍ အချို့သောအရင်းအမြစ်များကို ကိုင်တွယ်ရန် လိုအပ်သည့်အခြေအနေများတွင် ၎င်းသည် လိုအပ်ပါသည်။ C# သည် Enum အတန်းနှင့် LINQ အနည်းငယ်ကို အသုံးပြု၍ ၎င်းကိုအောင်မြင်ရန် ရိုးရှင်းသောနည်းလမ်းကို ပေးသည်။
စာရင်းစစ်တစ်ခု၏ အမြင့်ဆုံးတန်ဖိုးကို ပီယာကဲ့သို့ လွယ်ကူစွာ ပြန်လည်ရရှိစေမည့် ဖြေရှင်းချက်ကို စူးစမ်းကြည့်ကြပါစို့။
လူထု enum MyEnum
{
Option1 = 1၊
Option2 = 2၊
ရွေးချယ်မှု၃ = ၃
}
...
အများသူငှာ int GetMaxEnumValue()
{
Enum.GetValues(typeof(MyEnum)).ကာစ်ကို ပြန်ပေးသည်။().Max();
}
ဤကုဒ်တိုတိုအပိုင်းအစသည် enum တွင်အမြင့်ဆုံးတန်ဖိုးကိုပြန်လည်ရယူခြင်း၏အလုပ်အားလုံးကိုလုပ်ဆောင်သည်။ ဒါပေမယ့် ဘယ်လိုအလုပ်လုပ်လဲ။
ကုဒ်သို့ နက်နက်ရှိုင်းရှိုင်း ထိုးဆင်းပါ။
`Enum.GetValues(typeof(MyEnum))` သည် နားလည်ရန် ပထမဆုံး အရေးကြီးသောအပိုင်းဖြစ်သည်။ ဤ built-in .NET နည်းလမ်းသည် သတ်မှတ်ထားသော စာရင်းကောက်တစ်ခုတွင် ကိန်းသေများ၏တန်ဖိုးများပါရှိသော Array တစ်ခုကို ပြန်ပေးသည်။ စာရင်းကောက်အမျိုးအစားအား `typeof` သော့ချက်စာလုံးကို အသုံးပြု၍ နည်းလမ်းသို့ ကန့်သတ်ချက်တစ်ခုအဖြစ် ပေးပို့သည်။
ကျွန်ုပ်တို့တွင် array ကိုရရှိပြီးသည်နှင့်၊ ကျွန်ုပ်တို့သည် ၎င်းကို ကိန်းပြည့်များသို့ ချပြရန် လိုအပ်ပါသည်။ .Cast ကို အသုံးပြု၍ လုပ်ဆောင်သည်။LINQ (Language Integrated Query) ၏ အစိတ်အပိုင်းတစ်ခုဖြစ်သည့် () နည်းလမ်း။ LINQ သည် .NET ရှိ နည်းစနစ်များနှင့် နည်းလမ်းများ အစုအဝေးတစ်ခုဖြစ်ပြီး ကျွန်ုပ်တို့အား ပိုမိုနားလည်သဘောပေါက်ပြီး လိုက်လျောညီထွေရှိသော နည်းလမ်းဖြင့် ဒေတာများဖြင့် လုပ်ဆောင်နိုင်စေပါသည်။
တန်ဖိုးများကို ကိန်းပြည့်များသို့ ချပြီးနောက်၊ အမြင့်ဆုံးတန်ဖိုးကို ရယူခြင်းသည် .Max() နည်းလမ်းကို LINQ မှ ပံ့ပိုးပေးသည့် အခြားကောင်းမွန်သော ကိရိယာတစ်ခုဖြစ်သည်။ ဤနည်းလမ်းသည် int တန်ဖိုးများစုစည်းမှုတွင် အများဆုံးတန်ဖိုးကို ပြန်ပေးသည်။
Enum နှင့် LINQ စာကြည့်တိုက်များကို အသုံးချခြင်း။
Enum အတန်းသည် .NET ရှိ System namespace ၏ အစိတ်အပိုင်းတစ်ခုဖြစ်ပြီး စာရင်းကောက်မှုများနှင့် လုပ်ဆောင်ရန်အတွက် static method များစွာကို ပေးဆောင်သည်။ enum အမျိုးအစားများနှင့် သက်ဆိုင်သည့် မည်သည့်လုပ်ဆောင်ချက်ကိုမဆို လုပ်ဆောင်ရန် လိုအပ်သည့်အခါ ၎င်းသည် go-to library ဖြစ်သည်။
အခြားတစ်ဖက်တွင်၊ System.Linq namespace ၏တစ်စိတ်တစ်ပိုင်းဖြစ်သော LINQ သည် C# ၏အစွမ်းထက်ဆုံးအင်္ဂါရပ်များထဲမှတစ်ခုဖြစ်သည်။ အများဆုံး၊ အနိမ့်ဆုံး သို့မဟုတ် ပျမ်းမျှတန်ဖိုးများ၊ အမျိုးအစားခွဲခြင်းနှင့် ဒေတာစစ်ထုတ်ခြင်းစသည့် စုစည်းမှုများကို ထိထိရောက်ရောက်ကိုင်တွယ်ရန် နည်းလမ်းအမျိုးမျိုးကို ပံ့ပိုးပေးပါသည်။
ဆက်ဖတ်ရန်