بيان Java continue

يتم استخدام تعليمة الـ continue في جافا لتخطي التكرار الحالي لحلقة الكود. يمكن استخدام تعليمة الـ continue في جافا مع حلقات for، while و do-while.

عند استخدام تعليمة الـ continue في حلقة متداخلة، فإنها تتخطى فقط التنفيذ الحالي للحلقة الداخلية. يمكن استخدام تعليمة الـ continue في جافا بتسمية لتخطي التكرار الحالي للحلقة الخارجية أيضًا. دعونا نلقي نظرة على بعض أمثلة تعليمة الـ continue في جافا.

تعليمة continue في جافا لحلقة for

لنفترض أن لدينا مصفوفة من الأعداد الصحيحة ونريد معالجة الأعداد الزوجية فقط، هنا يمكننا استخدام حلقة continue لتخطي معالجة الأعداد الفردية.

package com.journaldev.java;

public class JavaContinueForLoop {

	public static void main(String[] args) {
		int[] intArray = { 1, 2, 3, 4, 5, 6, 7 };

		// نريد معالجة الإدخالات الزوجية فقط
		for (int i : intArray) {
			if (i % 2 != 0)
				continue;
			System.out.println("Processing entry " + i);
		}
	}

}

تعليمة continue في جافا لحلقة while

لنفترض أن لدينا مصفوفة ونريد معالجة فقط للفهرسات التي يتم قسمتها على 3. يمكننا استخدام تعليمة الـ continue في جافا هنا مع حلقة while.

package com.journaldev.java;

public class JavaContinueWhileLoop {

	public static void main(String[] args) {
		int[] intArray = { 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100 };
		int i = 0;
		while (i < 10) {

			if (i % 3 != 0) {
				i++;
				continue;
			}
			System.out.println("Processing Entry " + intArray[i]);
			i++;
		}
	}

}

تكملة دورة الـ do-while في جافا

يمكننا بسهولة استبدال الشفرة التالية للحلقة while أعلاه بدورة do-while كما يلي. سيكون نتيجة وتأثير عبارة التابع continue نفسها كالصورة أعلاه.

do {

	if (i % 3 != 0) {
		i++;
		continue;
	}
	System.out.println("Processing Entry " + intArray[i]);
	i++;
} while (i < 10);

تابع في جافا بوسم

لنلقِ نظرة على مثال بوسم continue في جافا لتخطي معالجة الحلقة الخارجية. سنستخدم مصفوفة ثنائية الأبعاد في هذا المثال وسنقوم بمعالجة عنصر فقط إذا كانت جميع العناصر أرقام إيجابية.

package com.journaldev.java;

import java.util.Arrays;

public class JavaContinueLabel {

	public static void main(String[] args) {

		int[][] intArr = { { 1, -2, 3 }, { 0, 3 }, { 1, 2, 5 }, { 9, 2, 5 } };

		process: for (int i = 0; i < intArr.length; i++) {
			boolean allPositive = true;
			for (int j = 0; j < intArr[i].length; j++) {
				if (intArr[i][j] < 0) {
					allPositive = false;
					continue process;
				}
			}
			if (allPositive) {
				// معالجة المصفوفة
				System.out.println("Processing the array of all positive ints. " + Arrays.toString(intArr[i]));
			}
			allPositive = true;
		}

	}

}

نقاط مهمة حول continue في جافا

بعض النقاط المهمة حول عبارة continue في جافا هي؛

  1. في الحالات البسيطة، يمكن استبدال عبارة continue بسهولة باستخدام شروط if-else ولكن عندما نملك العديد من شروط if-else فيجعل استخدام عبارة continue كودنا أكثر قراءة.
  2. تأتي عبارة continue مفيدة في حالات الحلقات المتداخلة وتخطي تسجيل معين من المعالجة.

I have made a short video explaining java continue statement in detail, you should watch it below. https://www.youtube.com/watch?v=udqWkqhc2kw Reference: Oracle Documentation

Source:
https://www.digitalocean.com/community/tutorials/java-continue-statement