控制循環結構


Java沒有goto,提供了continue,break,return 3個關鍵字用來控制循環結構


使用break結束循環

某些時候需要在某種條件出現時強制終止循環,而不是等到循環條件爲false時才推出循環。

此時,可以使用break來完成這個功能,break用於完全結束一個循環,跳出循環體。

不管是哪種循環,一單在循環體中遇到break,系統將完全結束該循環,開始執行循環之後的代碼

public static void main(String[] args)
	{
		for (int i = 0; i < 3; i++)
		{
			System.out.println("循環輸出i:" + i);
			if (i == 1)
			{
				break;
			}
		}
	}

break語句不僅可以結束其所在的循環,還可以直接結束其外層的循環,此時需要在break後緊跟一個標籤,這個標籤用於標識一個外層循環。

Java中的標籤就是一個緊跟着英文冒號(:)的標識符,注意,Java中的標籤只有放在循環語句之前纔有作用。

public static void main(String[] args)
	{
		out: for (int i = 0; i < 3; i++)
		{
			System.out.println("外層循環i:" + i);
			for (int j = 0; j < 3; j++)
			{
				System.out.println("內層循環j:" + j);
				if (j == 1)
				{
					break out;
				}
			}
		}
	}



使用continue忽略本次循環剩下語句

continue的功能和break有點類型,區別是continue只是忽略本次循環剩下語句,接着開始下一次循環,並不會終止循環,而break則是完全終止循環本身。

public static void main(String[] args)
	{
		for (int i = 0; i < 3; i++)
		{
			if (i == 1)
			{
				continue;
			}
			System.out.println("循環輸出i:" + i);
		}
		// 循環輸出i:0
		// 循環輸出i:2
	}

與break類似的是,continue後也可以緊跟一個標籤,用於直接跳過標籤所標識循環的當次循環的剩下語句,重新開始下一次循環。

public static void main(String[] args)
	{
		out: for (int i = 0; i < 3; i++)
		{
			for (int j = 0; j < 3; j++)
			{
				System.out.println("循環輸出j:" + j + ";輸出i:" + i);
				if (j == 1)
				{
					continue out;
				}
			}
		}
		// 循環輸出j:0;輸出i:0
		// 循環輸出j:1;輸出i:0
		// 循環輸出j:0;輸出i:1
		// 循環輸出j:1;輸出i:1
		// 循環輸出j:0;輸出i:2
		// 循環輸出j:1;輸出i:2
	}



使用return結束方法

return關鍵字並不是專門用來結束循環的,return的功能是結束一個方法。當一個方法執行到一個return語句時,這個方法將結束。

Java程序中大部分循環都被放在方法中執行,一旦在循環體內執行到一個return語句,return語句就會結束該方法,循環自然也隨之結束

public static void main(String[] args)
	{
		for (int i = 0; i < 3; i++)
		{
			System.out.println("循環輸出i:" + i);
			if (i == 1)
			{
				return;
			}
		}
		// 循環輸出i:0
		// 循環輸出i:1
	}



break,continue,return3個關鍵字對比

break:用於結束一個循環,跳出循環體。這裏是完全終止循環本身。

continue:終止本次循環,接着下一次的循環。這裏並沒有完全終止循環本身。

return:不是專門用來結束循環的,他的功能是結束一個方法。不管這個return處於幾層循環都直接結束這個方法。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章