更新時間:2022-09-26 09:37:45 來源:動力節點 瀏覽1145次
相信大家對for循環嵌套的使用已經有所了解,Java 中的嵌套 for 循環意味著一個 for 語句位于另一個 for 語句中。換句話說,嵌套在另一個 for循環中的 for 循環稱為嵌套 for 循環。
嵌套的 for 循環由一個外部 for 循環和一個或多個內部 for 循環組成。每次外部 for 循環重復時,內部 for 循環重新進入并開始新的執行。
也就是說,每次外部for循環重復時,控件都會進入內部for循環內部。
我們可以在一個循環中放置許多循環。但是,建議不要超過三層嵌套循環,因為這會使程序看起來很笨拙。
在 Java 中使用嵌套 for 循環的一般語法如下:
// 外部 for 循環。
for(初始化;測試條件;增量)
{
// 內部 for 循環。
for(初始化;測試條件;增量)
{
// 內循環語句
}
// 外循環語句
}
讓我們借助一個例子來理解它。
for(int i = 1; i <= 3; i++){
聲明1;// 該語句將通過將 i 值從 1 更改為 3 來執行 3 次。
}
for(int j = 1; j <= 4; j++){
聲明2;// 通過將 j 的值從 1 更改為 4,該語句將執行 4 次。
}
如果我們在第二個 for 循環中編寫第一個 for 循環,它將如下所示:
for(int i = 1; i <= 3; i++)
{
聲明1;// 將執行 3 次。
for(int j = 1; j <= 4; j++)
{
聲明2;// 將執行 12 (3 * 4) 次。
}
}
1.在本例中,當 i = 1 時,從外部 for 循環開始執行,statement1 將執行一次。
2.現在,執行控制進入內部 for 循環。由于我們最初將控制變量 j 設置為 1,因此 statement2 將執行一次。
3.在本次執行后,j 的值將是 2,因為自增 1。然后 statement2 將再次執行。
4.像這樣,內部 for 循環將執行 4 次,將 j 值從 1 更改為 4。這意味著 statement2 將在第一次執行外部 for 循環時執行 4 次。
5.當內部for循環執行完成時,執行控制權轉到外部for循環。現在,i 的值將是 2,因為增量為 1。
這一次,執行的控制再次進入內部for循環,statement2將執行4次。
6.然后,控件再次進入外部 for 循環,i 的值將設置為 3。再次,內部 for 循環將執行 4 次。
這意味著 i 和 j 的值將更改為:
當 i = 1, j = 1, 2, 3, 4
i = 2, j = 1, 2, 3, 4
i = 3, j = 1, 2, 3, 4
在上述序列中,外部 for 循環將執行 3 次。因此,循環體內的 statement1 也將執行 3 次。
由于內部 for 循環將為每個 i 值執行 4 次,因此循環體內的 statements2 將執行 12 次。
同樣,我們也可以在 for 循環中嵌套 while 循環或 do-while 循環,反之亦然。這些在 Java 中稱為嵌套循環。
1.讓我們編寫一個程序,我們將在其中顯示每次外部迭代的內部 for 循環的值,以及外部 for 循環的值。
程序代碼1:
公共類 NestedForLoopEx {
公共靜態無效主要(字符串 [] 參數)
{
// 外部 for 循環。
for(int i = 1; i <= 3; i++)
{
System.out.print(i+ "\n"); // 將執行 3 次。
// 內部 for 循環。
for(int j = 1; j <= 4; j++){
System.out.print(j+ " "); // 將執行 12 (3 * 4) 次。
}
System.out.println(" ");
}
}
}
輸出:
1
1 2 3 4
2
1 2 3 4
3
1 2 3 4
正如您在輸出中觀察到的,在外部 for 循環的每次迭代期間,內部 for 循環內的語句執行 4 次。因此,外部 for 循環執行了 3 次,而內部 for 循環總共執行了 4 次。
2. 讓我們編寫 Java 程序來使用嵌套的 for 循環顯示 1 和 2 的表。
程序代碼2:
公共類表{
公共靜態無效主要(字符串 [] 參數)
{
System.out.println("顯示表格:");
// 外部 for 循環。
for(int i = 1; i <= 3; i++)
{
// 內部 for 循環。
for(int j = 1; j <= 10; j++){
System.out.println(i+ " * " +j+" = "+ (i*j));
}
System.out.println(" ");
}
}
}
輸出:
顯示表格:
1 * 1 = 1
1 * 2 = 2
1 * 3 = 3
1 * 4 = 4
1 * 5 = 5
1 * 6 = 6
1 * 7 = 7
1 * 8 = 8
1 * 9 = 9
1 * 10 = 10
2 * 1 = 2
2 * 2 = 4
2 * 3 = 6
2 * 4 = 8
2 * 5 = 10
2 * 6 = 12
2 * 7 = 14
2 * 8 = 16
2 * 9 = 18
2 * 10 = 20
1. 讓我們編寫 Java 程序來使用嵌套的 for 循環顯示 * 的三角形。
程序代碼3:
公共類 PatternEx {
公共靜態無效主要(字符串 [] 參數)
{
System.out.println("顯示*的直角三角形:");
// 外部 for 循環。
for(int i = 1; i <= 5; i++)
{
// 內部 for 循環。
for(int j = 1; j <= i; j++){
System.out.print("*"+ " ");
}
System.out.println(" ");
}
}
}
輸出:
顯示 * 的直角三角形:
*
* *
* * *
* * * *
* * * * *
2. 讓我們創建一個Java 程序來顯示一個數字三角形。
程序代碼4:
公共類 PatternEx {
公共靜態無效主要(字符串 [] 參數)
{
System.out.println("顯示數字的直角三角形圖案:");
// 外部 for 循環。
for(int i = 1; i <= 5; i++)
{
// 內部 for 循環。
for(int j = 1; j <= i; j++){
System.out.print(j+ " ");
}
System.out.println(" ");
}
}
}
輸出:
顯示數字的直角三角形圖案:
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
程序代碼5:
公共類 PatternEx {
公共靜態無效主要(字符串 [] 參數)
{
詮釋 k = 1;
System.out.println("顯示數字的直角三角形圖案:");
// 外部 for 循環。
for(int i = 1; i <= 5; i++)
{
// 內部 for 循環。
for(int j = 1; j <= i; j++){
System.out.print(k+ " ");
}
System.out.println(" ");
k++;
}
}
}
輸出:
顯示數字的直角三角形圖案:
1
2 2
3 3 3
4 4 4 4
5 5 5 5 5
3. 讓我們創建一個 Java 程序,使用嵌套的 for 循環顯示以下模式。
程序代碼6:
公共類 PatternEx {
公共靜態無效主要(字符串 [] 參數)
{
System.out.println("數字顯示模式:");
// 外部 for 循環。
for(int i = 5; i >= 1; i--)
{
// 內部 for 循環。
for(int j = 1; j <= i; j++) {
System.out.print(j+ " ");
}
System.out.println(" ");
}
}
}
輸出:
數字顯示模式:
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1
4. 讓我們編寫程序代碼以使用 Java 嵌套的 for 循環打印以下字母模式。
程序代碼 7:
公共類 PatternEx {
公共靜態無效主要(字符串 [] 參數)
{
System.out.println("顯示字母圖案:");
// 外部 for 循環。
for(int i = 65; i <= 69; i++)
{
// 內部 for 循環。
for(int j = 65; j <= i; j++){
char ch = (char)j;
System.out.print(ch+ " ");
}
System.out.println(" ");
}
}
}
輸出:
顯示字母圖案:
一個
AB
美國廣播公司
A B C D
ABCDE
程序代碼 8:
公共類 PatternEx {
公共靜態無效主要(字符串 [] 參數)
{
System.out.println("顯示字母圖案:");
// 外部 for 循環。
for(int i = 69; i >= 65; i--)
{
// 內部 for 循環。
for(int j = 65; j <= i; j++) {
char ch = (char)j;
System.out.print(ch+ " ");
}
System.out.println(" ");
}
}
}
輸出:
顯示字母圖案:
ABCDE
A B C D
美國廣播公司
AB
一個
以上就是關于“Java中for循環語句嵌套示例”的介紹,大就如果對此比較感興趣,想了解更多相關知識,不妨來關注一下Java for循環語句,相信會對大家的學習有所幫助的。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習