Java 13 တွင် switch ရေးသားမှုကို ထပ်မံပြုပြင်ခဲ့ပါတယ်။ Java 13 မှာ yield keyword အသစ်ကို Java က မိတ်ဆက်လာပါတယ်။ အဓိက သုံးရတာကလည်း switch expression အတွင်းဖြစ်ပါတယ်။ထို့ကြောင့် Java 13၌
switch expression ကို yield keyword နဲ့ ပေါင်းပြီး ရေးသားမှုကို ပြုပြင်လာခဲ့ပါတယ်။ yield keyword အသုံးပြုမှုကို လေ့လာချင်ရင် yield keyword အသုံးပြုပုံကို blog အသစ်ရေးပေးထားပါတယ်။
Java 12 လောက်မှာကတည်းက switch expression ရေးသားရာ၌ default statement ကို ထည့်မရေးလည်းရတယ် ဆိုတာ စာဖတ်သူအနေနဲ့ သိပြီးသားဖြစ်ပါလိမ့်မယ်။ သို့သော် Java 12 ကစပြီး switch expression ကို enum type နဲ့ တွဲသုံးတဲ့ အခါ enum type ရဲ့ value ကို case နဲ့တွဲမသုံးထားဘူးဆိုရင်တော့ compile time error စစ်ပေးပါလိမ့်မယ်။
Java compiler အနေနဲ့ Enum type အတွင်းရှိ Value တွေကို သိတာကြောင့် switch expression အတွင်း enum type value အားလုံးကို အသုံးပြုပေးရပါလိမ့်မယ်။ အသုံးပြုထားလျှင် defualt statement ကို သုံးစရာမလိုတော့ပါ ဘူး။ သို့မဟုတ်လျှင် default statement ကို အသုံးပြုရပါလိမ့်မယ်။
ဥပမာ ၁။ ။
int value = switch (day) {
case MONDAY, FRIDAY, SUNDAY -> {
yield 4;
}
case TUESDAY -> {
System.out.println(7);
yield 7;
}
case THURSDAY, SATURDAY -> {
System.out.println(8);
yield 8;
}
case WEDNESDAY -> {
System.out.println(9);
yield 9;
}
};
System.out.println(value);
အထက်ပါ ဥပမာ သည် Java 13 ၌ switch expression ကို yeild statement နဲ့ စတင်အသုံးပြုလို့ ရလာသည့် ဥပမာ ဖြစ်ပါသည်။ ထို ဥပမာ၌ defalut statment ကို ထည့်မရေးထားပါ။ day သည် enum type ဖြစ်သည်။
enum type အတွင်းရှိ value များ အားလုံး ပါ၀◌င်သောကြောင့် default statment ကို ရေးသားရန်မလိုပါ။
value တစ်ခုခုကို သာ ထည့်မရေးခဲ့ပါက default statement ရေးကိုရေးသားရပါမည်။
Java 12 switch expression အကြောင်း လေ့လာရန် === > java-12-switch
yield keyword အကြောင်း လေ့လာရန် === > java-13-new-keyword-yield
#khan
Comments
Post a Comment