حلقه (Loop) ها در جاوا

حلقه ها در جاوا

تعریف

برای تکرار یک عمل از حلقه استفاده میکنیم.

یک حلقه تا زمانی که شرط برقرار باشه به تکرار ادامه میده و تعریف یک شرط برای حلقه اجباریه.

در جاوا سه حلقه ی for ، while , do-while داریم که هرکدوم کاربرد های خودشونو در برنامه نویسی دارن.

حلقه ی for

حلقه ی for در جاوا دارای چهار بخشه:

ساختار حلقه ی for در جاوا

۱- تعریف یک یا چند متغیر و اختصاص دادن مقدار به هر متغیر در صورت لزوم. این عمل یکبار هنگام شروع حلقه، انجام میشه (اختیاری)

۲- بررسی شرط (condition) پس از هر بار تکرار حلقه (الزامی)

۳- بیان یک یا چند عبارت که با هر بار تکرار حلقه اجرا میشن (اختیاری)

۴- بدنه ی حلقه و اجرای کد های داخل آن

مثال:

مثال زیر اعداد یک تا صد رو نمایش میده

for(int i=1; i<= 100; i++){ System.out.print(i + " "); }

مثال:

مثال زیر مجموع اعداد صفر تا صد رو نمایش میده.

int sum = 0; for (int i=1; i<= 100; i++){ sum += i; } System.out.println("Sum of 0 to 100 is " + sum);

مثال:

مثال زیر یک عدد رو از کاربر میگیره و فاکتوریل آن را حساب کرده و نمایش میده.

Scanner input = new Scanner(System.in); System.out.print("Enter a number to compute factorial: "); int fact = input.nextInt(); System.out.print(fact + "! is "); int result = 1; for (int i = fact; i > 0; i--) { if (i > 1) System.out.print(i + " * "); else System.out.print(i + " = "); result *= i; } System.out.println(result);

حلقه ی foreach

از جاوا 8 به بعد نوع خاصی از for به وجود اومد که foreach loop یا enhanced loop نام گرفت از این حلقه برای خواندن مقادیر داخل آرایه، List، Map، و هر کلاسی که از Iterator ارث بری میکنه در جاوا استفاده میشه.

String names = {"Joe", "Billy", "James", "Maya"}; for(String n : names){ System.out.println("Name: " + n); }

در مثال بالا حلقه پس از هربار تکرار یک مقدار از ارایه رو میگیره و در متغیر n ذخیره میکنه و از n داخل بدنه ی حلقه در دسترسه.

کلید واژه ی break و continue

این کلید واژه ها داخل بدنه ی حلقه مورد استفاده قرار میگیرن

۱- کلید واژه ی break:

برای شکستن حلقه و جلو گیری از ادامه ی تکرار استفاده میشه

۲-کلید واژه ی continue:

برای جلو گیری از اجرای بقیه کد ها در داخل حلقه استفاده میشه

حلقه ی while

حلقه ی while در جاوا داری دو بخشه:

ساختار حلقه ی while

۱- بررسی شرط (condition) برای تکرار حلقه

۲- بدنه ی حلقه و اجرای کد های داخل آن پس از برقرار بودن شرط در هر تکرار

مثال:

در مثال زیر برنامه یک عدد بین 0 تا 10 به صورت تصادفی ایجاد میکنه و کاربر باید عدد رو حدس بزنه. در این مثال از کلید واژه ی break استفاده شده.

Scanner input = new Scanner(System.in); int num = (int)(Math.random() * 10); int answer = -1; System.out.println("Guess the number generated by random:"); while (answer != num){ answer = input.nextInt(); if (answer == num) break; else if (answer> num) System.out.println("Your answer " + answer + " is too high guess again"); else System.out.println("Your answer " + answer + " is too low guess again"); } System.out.println("Congratulations! you guessed correct");

در داخل حلقه به بررسی جواب میپردازیم اگر جواب برابر با عدد ساخته شده بود تکرار رو متوقف میکنه و از حلقه خارج میشه. اگه جواب بزرگتر از عدد ساخته شده بود پیغام بزرگ بودن مقدار پاسخ نمایش میده و کاربر دوباره باید پاسخ بده. اگه جواب کوچیکتر بود پیغام کوچیکتر بودن مقدار پاسخ میده و کاربر باید دوباره پاسخ بده.

حلقه ی do-while

این حلقه مثل while است با این تفاوت که ابتدا کد های داخل بدنه ی حلقه اجرا میشن بعد حلقه شرط رو بررسی میکنه

مثال:

در برنامه ی زیر کاربر عدد رو وارد میکنه و پس وارد کردن همه ی اعداد دلخواه با صفر از حلقه خارج شده و برنامه مجموع اعداد وارد شده رو نمایش میده

int data; int sum = 0; Scanner input = new Scanner(System.in); do { System.out.print("Enter a data (the input ends with 0): "); data = input.nextInt(); sum += data; }while (data != 0); System.out.println("The sum is " + sum);

خلاصه

-در جاوا سه نوع کلی حلقه داریم for ، while و do-while

-وجود شرط برای هر سه حلقه ضروریه

-کلید واژه های break و continue برای شکستن حلقه و صرف نظر کردن از بقیه ی کدهای داخل حلقه

-در do-while ابتدا کد های داخل بدنه اجرا میشه بعد حلقه تکرار میشه

امیدوارم این مطلب بدردتون خورده باشه

خوش شانس باشید

arrow_drop_up
کپی شد!