برنامه نویسی 349 بازدید

در این مقاله به بررسی یکی از جنبه‌های اساسی زبان جاوا یعنی اجرای یک گزاره یا گروهی از گزاره‌ها به طور مکرر با استفاده از حلقه for جاوا می‌پردازیم.

حلقه for ساده

یک حلقه for به ساختاری کنترلی گفته می‌شود که امکان تکرار عملیات معینی را با افزایش و ارزیابی شمارنده حلقه فراهم می‌سازد. پیش از نخستین تکرار، شمارنده حلقه مقداردهی می‌شود، سپس ارزیابی شرط اجرا می‌شود و متعاقباً گام تعریف می‌شود (که معمولاً یک افزایش ساده است). ساختار حلقه for به صورت زیر است:

به مثال ساده زیر توجه کنید:

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

حلقه‌های for برچسب‌دار

امکان تعریف حلقه‌های for برچسب‌دار (labeled) نیز وجود دارد. این حلقه‌ها در مواردی مفید هستند که حلقه‌های for تودرتو داشته باشیم، چون می‌توانیم از حلقه for خاصی خارج شویم و یا از حلقه دیگری کار را ادامه دهیم:

حلقه for بهبود یافته

از جاوا نسخه 5 به بعد، نوع ثانویه‌ای از حلقه for داریم که به نام حلقه for بهبود یافته (enhanced) نامیده می‌شود. این نوع حلقه for امکان تکرار روی همه عناصر در یک آرایه یا یک کلکسیون را ساده‌تر می‌سازد.

ساختار حلقه for بهبودیافته به صورت زیر است:

از آنجا که این حلقه در مقایسه با حلقه for استاندارد ساده‌تر شده است، باید تنها دو مقدار را در زمان مقداردهی حلقه تعریف کنیم:

  1. دستگیره‌ای برای یک عنصر که در حال تکرار روی آن هستیم.
  2. آرایه/کلکسیون مبدأ که روی آن تکرار می‌کنیم.

از این رو می‌توانیم بگوییم که: برای هر عنصر در Items، عنصر را به متغیر item انتساب می‌دهیم و بدنه حلقه را اجرا می‌کنیم.

به مثال ساده زیر توجه کنید:

از حلقه فوق می‌توان برای تعریف تکرار روی ساختمان‌های داده مختلف در جاوا استفاده کرد. با فرض وجود شیء List<String> list می‌توانیم روی آن تکرار کنیم:

همچنین می‌توانید به سادگی روی یک مجموعه <Set<String تکرار کنید:

و با فرض وجود یک map مانند <Map<String,Integer به صورت زیر عمل می‌کنیم:

()Iterable.forEach

از جاوا نسخه 8 به بعد می‌توانیم از حلقه‌های for-each به روشی نسبتاً متفاوت استفاده کنیم. اکنون یک متد ()forEach در اینترفیس Iterable داریم که یک عبارت لامبدا می‌پذیرد که نمایش‌دهنده عملی است که می‌توانیم اجرا کنیم. در واقع در این روش، کار را به صورت داخلی با حلقه استاندارد اجرا می‌کنیم:

به مثال زیر توجه کنید:

سخن پایانی

در این مقاله به بررسی حلقه for جاوا پرداختیم. کد کامل موارد مطرح‌شده در این مقاله را می‌توانید در این ریپوی گیت‌هاب (+) ببینید.

اگر این مطلب برای شما مفید بوده است، آموزش‌های زیر را نیز به شما پیشنهاد می‌کنیم:

==

«میثم لطفی» دانش‌آموخته ریاضیات و شیفته فناوری به خصوص در حوزه رایانه است. وی در حال حاضر علاوه بر پیگیری علاقه‌مندی‌هایش در رشته‌های برنامه‌نویسی، کپی‌رایتینگ و محتوای چندرسانه‌ای، در زمینه نگارش مقالاتی با محوریت نرم‌افزار نیز با مجله فرادرس همکاری دارد.

آیا این مطلب برای شما مفید بود؟

نظر شما چیست؟

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *