Java 12
Switch statement က Java 12 ကနေ စတင်ပြောင်းလဲ လာတယ် လို့ ပြောလို့ရပါတယ်။ကျွန်တော်တို့ Java 12 မတိုင် ခင်က traditional ရေးသားနည်းလေးနဲ့ အစပြုလိုက်ကြရအောင်။
switch (day) {
case MONDAY:
case FRIDAY:
case SUNDAY:
System.out.println(6);
break;
case TUESDAY:
System.out.println(7);
break;
case THURSDAY:
case SATURDAY:
System.out.println(8);
break;
case WEDNESDAY:
System.out.println(9);
break;
}
အထက်ပါ ရေးသားမှု အရဆိုလျှင် day သည် MONDAY ဖြစ်လျှင် 6 အဖြေရမှာပါ။ အကယ်၍ break စကားလုံးသာ မပါဘူးလို့ရစပါက အဖြမှန် နေရာက စပြီး ကျန် စာကြောင်းများ အားလုံး ထွက်နေမှာပါ။အောက်ပါ code ကို နမူနာကြည့်ပါ။
switch (day) {
case MONDAY:
case FRIDAY:
case SUNDAY:
System.out.println(6);
case TUESDAY:
System.out.println(7);
case THURSDAY:
case SATURDAY:
System.out.println(8);
break;
case WEDNESDAY:
System.out.println(9);
break;
}
အထက်ပါ ရေးသားမှု အရဆိုလျှင် day သည် MONDAY ဖြစ်လျှင် အဖြေသည်
6
7
8
ကဲ့သို့ ထွက်လာမှာပါ။ break ဆိုတဲ့ keyword ကို မတွေ့မချင်း အလုပ်လုပ်နေမှာပါ။
Java V12 မှာ switch ရေးသားပုံက စတင်ပြီးပြောင်းလဲလာပါတယ်။ ရေးသားမှု ပုံစံကို အောက်ပါအတိုင်း မှတ်ယူထားနိုင်ပါတယ်။
"case L ->"
traditional ရေးသားမှု ပုံစံ ဖြစ်တဲ့ : နဲ့ မဟုတ်တော့ဘဲ -> ဖြစ်သွားပါတယ်။ အထက်ပါ နမူနာ code ကို ပြန်လည် ရေးသားပါက အောက်ပါအတိုင်းပြောင်းလဲ သွားပါမယ်။
switch (day) {
case MONDAY, FRIDAY, SUNDAY -> System.out.println(6);
case TUESDAY -> System.out.println(7);
case THURSDAY, SATURDAY -> System.out.println(8);
case WEDNESDAY -> System.out.println(9);
}အင်မတန်မှ ဘဲ code ရေးသားရာမှာလည်း ရှင်းလင်းသွားပြီး code အကြောင်းအရေအတွက်လည်း နည်းသွားပါတယ်။ Letter တစ်ခု နဲ့ တစ်ခု အကြား , တွေ ခံပြီးရေးလို့ ရပါတယ်။ -> ကို သုံးပါတယ်။ break keyword က အထူးတစ်လည် သုံးစရာမလိုအပ်တော့ပါဘူး။
traditional ပုံစံနဲ့ ရေးသားထားလျှင် case တစ်ခုမှာ ပါတဲ့ local variable ကို အခြားcase တစ်ခု နေမသိနိုင်ပါဘူး။ ထို့ကြောင့် case အားလုံးက သိလိုလျှင် instance variable ကြောငြာလျှင် သိသွားနိုင်ပါတယ်။ သို့သော် ထို switch ရဲ့ အရှေ့မှာ instance variable ရေးလို့မရခဲ့ပါဘူး။ဥပမာ အောက်ပါ ကိုကြည့်ပါ။
int numLetters = switch (day) {
case MONDAY:
case FRIDAY:
case SUNDAY:
numLetters = 6;
break;
case TUESDAY:
numLetters = 7;
break;
case THURSDAY:
case SATURDAY:
numLetters = 8;
break;
case WEDNESDAY:
numLetters = 9;
break;
default:
throw new IllegalStateException("Wat: " + day);
}Java 12 မတိုင်ခင်က အထက်ပါကဲ့သို့ ရေးလို့မရခဲ့ပါဘူး။Java 12 နောက်ပိုင်းမှာ ရေးသားပုံ ပြောင်းလဲ လာတာနဲ့အတူ switch အရှေ့မှာ variable ကြောငြာပြီး ရေးသားလို့ရလာပါတယ်။အောက်ပါအတိုင်းပြောင်းလဲလာပါတယ်။
int numLetters = switch (day) {
case MONDAY, FRIDAY, SUNDAY -> 6;
case TUESDAY -> 7;
case THURSDAY, SATURDAY -> 8;
case WEDNESDAY -> 9;
};အထက်ပါရေးသားပုံအရ -> ရဲ့ ညာဘက် ၌ ရှိသော တန်ဖိုး က return value ဖြစ်သွားပြီး numLetters ၏ တန်ဖိုး ဖြစ်သွားပါတယ်။ -> numberletters = 6;ကဲ့သို့ ရေးသားစရာမလိုပါ။
Switch expression and statements အကြောင်းသိကောင်းစရာ
Java13 တွင် Switch ပြောင်းလဲမှု လေ့လာရန် === > java-13-switch-jep-354
#khan
Comments
Post a Comment