更新時間:2022-09-26 09:37:45 來源:動力節(jié)點 瀏覽1020次
相信大家對for循環(huán)嵌套的使用已經(jīng)有所了解,Java 中的嵌套 for 循環(huán)意味著一個 for 語句位于另一個 for 語句中。換句話說,嵌套在另一個 for循環(huán)中的 for 循環(huán)稱為嵌套 for 循環(huán)。
嵌套的 for 循環(huán)由一個外部 for 循環(huán)和一個或多個內(nèi)部 for 循環(huán)組成。每次外部 for 循環(huán)重復(fù)時,內(nèi)部 for 循環(huán)重新進入并開始新的執(zhí)行。
也就是說,每次外部for循環(huán)重復(fù)時,控件都會進入內(nèi)部for循環(huán)內(nèi)部。
我們可以在一個循環(huán)中放置許多循環(huán)。但是,建議不要超過三層嵌套循環(huán),因為這會使程序看起來很笨拙。
在 Java 中使用嵌套 for 循環(huán)的一般語法如下:
// 外部 for 循環(huán)。
for(初始化;測試條件;增量)
{
// 內(nèi)部 for 循環(huán)。
for(初始化;測試條件;增量)
{
// 內(nèi)循環(huán)語句
}
// 外循環(huán)語句
}
讓我們借助一個例子來理解它。
for(int i = 1; i <= 3; i++){
聲明1;// 該語句將通過將 i 值從 1 更改為 3 來執(zhí)行 3 次。
}
for(int j = 1; j <= 4; j++){
聲明2;// 通過將 j 的值從 1 更改為 4,該語句將執(zhí)行 4 次。
}
如果我們在第二個 for 循環(huán)中編寫第一個 for 循環(huán),它將如下所示:
for(int i = 1; i <= 3; i++)
{
聲明1;// 將執(zhí)行 3 次。
for(int j = 1; j <= 4; j++)
{
聲明2;// 將執(zhí)行 12 (3 * 4) 次。
}
}
1.在本例中,當(dāng) i = 1 時,從外部 for 循環(huán)開始執(zhí)行,statement1 將執(zhí)行一次。
2.現(xiàn)在,執(zhí)行控制進入內(nèi)部 for 循環(huán)。由于我們最初將控制變量 j 設(shè)置為 1,因此 statement2 將執(zhí)行一次。
3.在本次執(zhí)行后,j 的值將是 2,因為自增 1。然后 statement2 將再次執(zhí)行。
4.像這樣,內(nèi)部 for 循環(huán)將執(zhí)行 4 次,將 j 值從 1 更改為 4。這意味著 statement2 將在第一次執(zhí)行外部 for 循環(huán)時執(zhí)行 4 次。
5.當(dāng)內(nèi)部for循環(huán)執(zhí)行完成時,執(zhí)行控制權(quán)轉(zhuǎn)到外部for循環(huán)。現(xiàn)在,i 的值將是 2,因為增量為 1。
這一次,執(zhí)行的控制再次進入內(nèi)部for循環(huán),statement2將執(zhí)行4次。
6.然后,控件再次進入外部 for 循環(huán),i 的值將設(shè)置為 3。再次,內(nèi)部 for 循環(huán)將執(zhí)行 4 次。
這意味著 i 和 j 的值將更改為:
當(dāng) i = 1, j = 1, 2, 3, 4
i = 2, j = 1, 2, 3, 4
i = 3, j = 1, 2, 3, 4
在上述序列中,外部 for 循環(huán)將執(zhí)行 3 次。因此,循環(huán)體內(nèi)的 statement1 也將執(zhí)行 3 次。
由于內(nèi)部 for 循環(huán)將為每個 i 值執(zhí)行 4 次,因此循環(huán)體內(nèi)的 statements2 將執(zhí)行 12 次。
同樣,我們也可以在 for 循環(huán)中嵌套 while 循環(huán)或 do-while 循環(huán),反之亦然。這些在 Java 中稱為嵌套循環(huán)。
1.讓我們編寫一個程序,我們將在其中顯示每次外部迭代的內(nèi)部 for 循環(huán)的值,以及外部 for 循環(huán)的值。
程序代碼1:
公共類 NestedForLoopEx {
公共靜態(tài)無效主要(字符串 [] 參數(shù))
{
// 外部 for 循環(huán)。
for(int i = 1; i <= 3; i++)
{
System.out.print(i+ "\n"); // 將執(zhí)行 3 次。
// 內(nèi)部 for 循環(huán)。
for(int j = 1; j <= 4; j++){
System.out.print(j+ " "); // 將執(zhí)行 12 (3 * 4) 次。
}
System.out.println(" ");
}
}
}
輸出:
1
1 2 3 4
2
1 2 3 4
3
1 2 3 4
正如您在輸出中觀察到的,在外部 for 循環(huán)的每次迭代期間,內(nèi)部 for 循環(huán)內(nèi)的語句執(zhí)行 4 次。因此,外部 for 循環(huán)執(zhí)行了 3 次,而內(nèi)部 for 循環(huán)總共執(zhí)行了 4 次。
2. 讓我們編寫 Java 程序來使用嵌套的 for 循環(huán)顯示 1 和 2 的表。
程序代碼2:
公共類表{
公共靜態(tài)無效主要(字符串 [] 參數(shù))
{
System.out.println("顯示表格:");
// 外部 for 循環(huán)。
for(int i = 1; i <= 3; i++)
{
// 內(nèi)部 for 循環(huán)。
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 循環(huán)顯示 * 的三角形。
程序代碼3:
公共類 PatternEx {
公共靜態(tài)無效主要(字符串 [] 參數(shù))
{
System.out.println("顯示*的直角三角形:");
// 外部 for 循環(huán)。
for(int i = 1; i <= 5; i++)
{
// 內(nèi)部 for 循環(huán)。
for(int j = 1; j <= i; j++){
System.out.print("*"+ " ");
}
System.out.println(" ");
}
}
}
輸出:
顯示 * 的直角三角形:
*
* *
* * *
* * * *
* * * * *
2. 讓我們創(chuàng)建一個Java 程序來顯示一個數(shù)字三角形。
程序代碼4:
公共類 PatternEx {
公共靜態(tài)無效主要(字符串 [] 參數(shù))
{
System.out.println("顯示數(shù)字的直角三角形圖案:");
// 外部 for 循環(huán)。
for(int i = 1; i <= 5; i++)
{
// 內(nèi)部 for 循環(huán)。
for(int j = 1; j <= i; j++){
System.out.print(j+ " ");
}
System.out.println(" ");
}
}
}
輸出:
顯示數(shù)字的直角三角形圖案:
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
程序代碼5:
公共類 PatternEx {
公共靜態(tài)無效主要(字符串 [] 參數(shù))
{
詮釋 k = 1;
System.out.println("顯示數(shù)字的直角三角形圖案:");
// 外部 for 循環(huán)。
for(int i = 1; i <= 5; i++)
{
// 內(nèi)部 for 循環(huán)。
for(int j = 1; j <= i; j++){
System.out.print(k+ " ");
}
System.out.println(" ");
k++;
}
}
}
輸出:
顯示數(shù)字的直角三角形圖案:
1
2 2
3 3 3
4 4 4 4
5 5 5 5 5
3. 讓我們創(chuàng)建一個 Java 程序,使用嵌套的 for 循環(huán)顯示以下模式。
程序代碼6:
公共類 PatternEx {
公共靜態(tài)無效主要(字符串 [] 參數(shù))
{
System.out.println("數(shù)字顯示模式:");
// 外部 for 循環(huán)。
for(int i = 5; i >= 1; i--)
{
// 內(nèi)部 for 循環(huán)。
for(int j = 1; j <= i; j++) {
System.out.print(j+ " ");
}
System.out.println(" ");
}
}
}
輸出:
數(shù)字顯示模式:
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1
4. 讓我們編寫程序代碼以使用 Java 嵌套的 for 循環(huán)打印以下字母模式。
程序代碼 7:
公共類 PatternEx {
公共靜態(tài)無效主要(字符串 [] 參數(shù))
{
System.out.println("顯示字母圖案:");
// 外部 for 循環(huán)。
for(int i = 65; i <= 69; i++)
{
// 內(nèi)部 for 循環(huán)。
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 {
公共靜態(tài)無效主要(字符串 [] 參數(shù))
{
System.out.println("顯示字母圖案:");
// 外部 for 循環(huán)。
for(int i = 69; i >= 65; i--)
{
// 內(nèi)部 for 循環(huán)。
for(int j = 65; j <= i; j++) {
char ch = (char)j;
System.out.print(ch+ " ");
}
System.out.println(" ");
}
}
}
輸出:
顯示字母圖案:
ABCDE
A B C D
美國廣播公司
AB
一個
以上就是關(guān)于“Java中for循環(huán)語句嵌套示例”的介紹,大就如果對此比較感興趣,想了解更多相關(guān)知識,不妨來關(guān)注一下Java for循環(huán)語句,相信會對大家的學(xué)習(xí)有所幫助的。
初級 202925
初級 203221
初級 202629
初級 203743