دستور switch از میان چندین دستور آن دستوری که شرط متناظرش برقرار و صحیح باشد را اجرا می کند. ساختمان switch کاربردی مشابه if else if دارد.
دستور استفاده از Switch:
switch(expression){ case value1: //code to be executed; break; //optional case value2: //code to be executed; break; //optional ...... default: code to be executed if all cases are not matched; }
مثال کاربردی:
public class SwitchExample { public static void main(String[] args) { int number=20; switch(number){ case 10: System.out.println("10");break; case 20: System.out.println("20");break; case 30: System.out.println("30");break; default:System.out.println("Not in 10, 20 or 30"); } } }
آموزش جاوا : دستور break در ساختمان Switch زبان Java اختیاری است!
بدین معنی که اگر دستور break بعد از هر case درج نشده باشد، آنگاه switch پس از مواجه شدن با اولین دستور که شرط متناظر آن برقرار است، علاوه بر آن دستور، دستورات بعدی را نیز اجرا می کند.
مثال کاربردی:
public class SwitchExample2 { public static void main(String[] args) { int number=20; switch(number){ case 10: System.out.println("10"); case 20: System.out.println("20"); case 30: System.out.println("30"); default:System.out.println("Not in 10, 20 or 30"); } } }
خروجی:
20 30 Not in 10, 20 or 30
آموزش جاوا : حلقه ی for به توسعه دهنده این امکان را می دهد تا یک مجموعه دستور را تا زمانی که شرط خاصی برقرار است، به تعداد دفعات معین تکرار کند. اگر تعداد دفعات تکرار دستورات ثابت است، توصیه می شود که از حلقه ی for استفاده نمایید.
در کل سه نوع حلقه for در جاوا وجود دارد:
حلقه ی ساده ی for کاربردی مشابه در C/C++ دارد. حلقه ی for سه پارامتر به شرح زیر به عنوان ورودی می گیرد:
دستور استفاده:
for(initialization;condition;incr/decr){ //code to be executed }
مثال کاربردی:
public class ForExample { public static void main(String[] args) { for(int i=1;i<=10;i++){ System.out.println(i); } } }
خروجی:
1 2 3 4 5 6 7 8 9 10
حلقه ی for-each در جاوا برای پیمایش در آرایه یا داده هایی که از جنس مجموعه/collection هستند، بکار می رود. استفاده از این حلقه ی تکرار به مراتب از for آسان تر می باشد چراکه لازم به افزایش مقدار شمارنده در هر بار گام حلقه و استفاده از ساختار " ]اندیس[ نام آرایه " نیست. این حلقه در هر گام اجرا خود المان های آرایه را تک تک داخل متغیر موقتی که داخل پرانتز جلوی for تعریف شده است قرار می دهد. لازم به ذکر است که این حلقه بر روی المان های آرایه کار می کند نه اندیس آن ها.
دستور استفاده از حلقه:
for(Type var:array){ //code to be executed }
مثال کاربردی:
public class ForEachExample { public static void main(String[] args) { int arr[]={12,23,44,56,78}; for(int i:arr){ System.out.println(i); } } }
خروجی:
12 23 44 56 78
می توان به ازای هر حلقه ی for یک نام انتخاب کرده و به آن تخصیص داد. برای این منظور، کافی است قبل از (در بالای) هر دستور for مجزا، یک اسم دلخواه درج کرد. از این قابلیت زمانی استفاده می شود که حلقه های for به صورت تودرتو تعریف شده و لازم باشد در ساختمان حلقه ی مربوطه از دستور break/continue استفاده شود. در شرایط عادی، کلیدواژه های break و continue تنها داخل عمیق ترین حلقه ی for تودرتو اعمال می شوند.
دستور break در حلقه سبب می شود که روند اجرا داخل ساختمان حلقه متوقف شده و کنترل برنامه از حلقه بیرون بپرد. دستور continue تنها گام جاری را نادیده گرفته و سپس اجرا را از بالای حلقه از سر می گیرد.
دستور استفاده از حلقه:
labelname: for(initialization;condition;incr/decr){ //code to be executed }
مثال کاربردی:
public class LabeledForExample { public static void main(String[] args) { aa: for(int i=1;i<=3;i++){ bb: for(int j=1;j<=3;j++){ if(i==2&&j==2){ break aa; } System.out.println(i+" "+j); } } } }
خروجی:
1 1 1 2 1 3 2 1
اگر از دستور break bb; استفاده نمایید، در آن صورت تنها از حلقه ی درونی بیرون می پرد که رفتار پیش فرض تمامی حلقه ها است.
public class LabeledForExample { public static void main(String[] args) { aa: for(int i=1;i<=3;i++){ bb: for(int j=1;j<=3;j++){ if(i==2&&j==2){ break bb; } System.out.println(i+" "+j); } } } }
خروجی:
1 1
1 2
1 3
2 1
3 1
3 2
3 3
اگر دو نقطه ویرگول ";;" را به عنوان پارامتر به دستور for ارسال نمایید، حلقه ی for تا بی نهایت مجموعه دستورات را تکرار می کند.
نحوه ی تعریف حلقه ی for بی نهایت:
for(;;){ //code to be executed }
مثال کاربردی:
public class ForExample { public static void main(String[] args) { for(;;){ System.out.println("infinitive loop"); } } }
خروجی:
infinitive loop infinitive loop infinitive loop infinitive loop ctrl+c
جهت خروج از برنامه یا خاتمه دادن حلقه ی بی نهایت لازم است کلیدهای ctrl+c را همزمان فشار دهید.
آموزش جاوا ادامه دارد