حلقه do While

حلقه do while یکی دیگر از ساختارهای تکرار است. این حلقه بسیار شبیه حلقه while است با این تفاوت که در این حلقه ابتدا کد اجرا می‌شود و سپس شرط مورد بررسی قرار می‌گیرد. ساختار حلقه do while به صورت زیر است :

do
{
   code to repeat;

} while (condition)

همانطور که مشاهده می‌کنید شرط در آخر ساختار قرار دارد. این بدین معنی است که کدهای داخل بدنه حداقل یکبار اجرا می‌شوند. برخلاف حلقه while که اگر شرط نادرست باشد دستورات داخل بدنه اجرا نمی‌شوند. یکی از موراد برتری استفاده از حلقه do while نسبت به حلقه while، زمانی است که، شما بخواهید اطلاعاتی از کاربر دریافت کنید. به مثال زیر توجه کنید :

استفاده از while

//while version

System.out.print("Enter a number greater than 10: ");
number = input.nextInt();

while(number < 10)
{
   System.out.println("Enter a number greater than 10: ");
   number = input.nextInt();
}

استفاده از do while

//do while version

do
{
   System.out.println("Enter a number greater than 10: ");
   number = input.nextInt();
}
while(number < 10)

مشاهده می‌کنید که از کدهای کمتری در بدنه do while نسبت به while استفاده شده است.