Java continue的特殊用法 繼續當前循環


前言

今天java練習的時候,遇到了一道有趣的題目,加深了我對cotinue的理解,所以我寫個筆記,記錄一下continue的特殊用法

continue作用說明

這里我使用個例子來簡單說明一下:

for(int i=0;i<5;i++){
	if(i==2){
		continue;
	}
	System.out.print(i);
}

上述代碼 最終結果是為0134 我們可以理解為忽略掉了i=2的這種情況

問題來了,如果我們想使用continue但不想把那種情況給忽略掉,怎么辦呢?

很簡單,其實,把在continue語句前加上i--即可

for(int i=0;i<5;i++){
	if(i==2){
		i--;
		continue;
	}
	System.out.print(i);
}

習題

下面的題目則是我做的練習題

題目要求:在1-10范圍內,循環生成7個數,並且不重復

	Random random = new Random();
	int[] a = new int[7];
	for (int i = 0; i < a.length; i++) {
		int num = random.nextInt(10)+1;
		boolean flag = false;//是否重復
		//遍歷之前數組,如果有重復就置flag為true
		for (int j = 0; j <a.length; j++) {
			if (num==a[j]){
				flag=true;//存在了重復的數字
				break;
			}
		}
		if (flag){
			//因為使用continue語句的時候,會忽略當前的i,從而執行i++,
			// 所以我們在執行continue語句之前,讓i的值減1,
			// 這樣就能使得下次循環還是停留在原本的i
			i--;
			continue;//存在重復了的數字,重新循環,獲取隨機數
		}else{
			a[i] =num;//不存在重復,則賦值
		}
	}
	for (int i = 0; i < a.length; i++) {
		System.out.print(a[i]+" ");
	}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM