Java for 循环用于多次迭代程序的一部分。如果迭代次数固定,建议使用for循环。

Java 中有三种类型的 for 循环。

1.png

  • 简单的 for 循环
  • For-each或增强型 for 循环
  • 标记为循环

Java 简单 for 循环

一个简单的for循环在Java中与C/C++相似。它由四个部分组成:初始化、条件、递增/递减和循环体。

  1. 初始化:在循环开始之前执行的初始条件。在这里,我们可以初始化变量,也可以使用已经初始化的变量。这是一个可选部分,可以省略。
  2. 条件:在每次循环迭代之前进行测试的条件。只要条件为真,循环就会继续执行。它必须返回布尔值true或false。这也是一个可选部分,可以省略。如果省略条件部分,则被认为始终为true。
  3. 递增/递减:在每次循环迭代之后执行的操作,用于递增或递减循环变量的值。这也是一个可选部分,可以省略。
  4. 循环体:在每次循环迭代时执行的语句块。它是循环的实际操作部分。

句法:

for(initialization; condition; increment/decrement){    
//要执行的语句或代码    
}     

流程图:

2.png

例子:

ForExample.java

//Java程序演示for循环的例子 
// 打印表 1 
public class ForExample {  
public static void main(String[] args) {  
    //Code of Java for loop  
    for(int i=1;i<=10;i++){  
        System.out.println(i);  
    }  
}  
}  

输出:

1
2
3
4
5
6
7
8
9
10

Java 嵌套 for 循环

如果我们在另一个循环中有一个 for 循环,它被称为嵌套 for 循环。只要外循环执行,内循环就会完全执行。

例子:

NestedForExample.java

public class NestedForExample {  
public static void main(String[] args) {  
//i的循环   
for(int i=1;i<=3;i++){  
//j的循环
for(int j=1;j<=3;j++){  
        System.out.println(i+" "+j);  
}//end of i  
}//end of j  
}  
}  

输出:

1 1
1 2
1 3
2 1
2 2
2 3
3 1
3 2
3 3

金字塔示例 1:

PyramidExample.java

public class PyramidExample {  
public static void main(String[] args) {  
for(int i=1;i<=5;i++){  
for(int j=1;j<=i;j++){  
        System.out.print("* ");  
}  
System.out.println();//新的一行  
}  
}  
}  

输出:

* 
* * 
* * * 
* * * * 
* * * * * 

金字塔示例 2:

PyramidExample2.java

public class PyramidExample2 {  
public static void main(String[] args) {  
int term=6;  
for(int i=1;i<=term;i++){  
for(int j=term;j>=i;j--){  
        System.out.print("* ");  
}  
System.out.println();//新的一行
}  
}  
}  

输出:

* * * * * * 
* * * * * 
* * * * 
* * * 
* * 
*  

Java for-each 循环

for-each 循环用于遍历 Java 中的数组或集合。它比简单的 for 循环更容易使用,因为我们不需要增加值和使用下标表示法。

它基于元素而不是索引工作。它在定义的变量中一个一个地返回元素。

句法:

for(data_type variable : array_name){    
//要执行的代码 
}    

例子:

ForEachExample.java

//Java For-each 循环示例打印 
//数组元素 
public class ForEachExample {  
public static void main(String[] args) {  
    //声明一个数组   
    int arr[]={12,23,44,56,78};  
    //使用for-each循环打印数组 
    for(int i:arr){  
        System.out.println(i);  
    }  
}  
}  

输出:

12
23
44
56
78

Java 标记为循环

我们可以为每个 Java for 循环命名。为此,我们在 for 循环之前使用标签。这在使用嵌套 for 循环时很有用,因为我们可以中断/继续特定的 for 循环。

注意:break 和 continue 关键字分别中断或继续最内层的 for 循环。

句法:

labelname:    
for(initialization; condition; increment/decrement){    
//要执行的代码
}

例子:

LabeledForExample.java

//一个Java程序来演示标记for循环的使用 
public class LabeledForExample {  
public static void main(String[] args) {  
    //在外层和for循环中使用Label 
    aa:  
        for(int i=1;i<=3;i++){  
            bb:  
                for(int j=1;j<=3;j++){  
                    if(i==2&&j==2){  
                        break aa;  
                    }  
                    System.out.println(i+" "+j);  
                }  
        }  
    }  
}  

输出:

1 1
1 2
1 3
2 1

如果你使用break bb; ,它只会打破内部循环,这是任何循环的默认行为。

LabeledForExample2.java

public class LabeledForExample2 {  
public static void main(String[] args) {  
    aa:  
        for(int i=1;i<=3;i++){  
            bb:  
                for(int j=1;j<=3;j++){  
                    if(i==2&&j==2){  
                        break bb;  
                    }  
                    System.out.println(i+" "+j);  
                }  
        }  
}  
}  

输出:

1 1
1 2
1 3
2 1
3 1
3 2
3 3

Java 不定式 for 循环

如果你使用两个分号 ;; 在for循环中,它将是不定式for循环。

句法:

for(;;){  
//要执行的代码 
}  

例子:

ForExample.java

//Java程序演示无限for循环的使用 
//打印一条语句 
public class ForExample {  
public static void main(String[] args) {  
    //在for循环中不使用条件 
    for(;;){  
        System.out.println("无限循环");  
    }  
}  
}  

输出:

无限循环
无限循环
无限循环
无限循环
无限循环
Ctrl+C

现在,您需要按 ctrl+c 退出程序。

Java for 循环 vs while 循环 vs do-while 循环

比较for循环while循环do-while 循环
介绍Java for 循环是一种控制流语句,它多次迭代程序的一部分。Java while 循环是一种控制流语句,它根据给定的布尔条件重复执行程序的一部分。Java do while 循环是一种控制流语句,它至少执行程序的一部分,进一步执行取决于给定的布尔条件。
何时使用如果迭代次数固定,建议使用for循环。如果迭代次数不固定,建议使用while循环。如果迭代次数不固定,必须至少执行一次循环,建议使用do-while循环。
句法for(init;condition;incr/decr){ // 要执行的代码 }while(condition){ //要执行的代码 }do{ //要执行的代码 }while(condition);
例子//for 循环 for(int i=1;i<=10;i++){ System.out.println(i); }//while 循环 int i=1; while(i<=10){ System.out.println(i); 我++; }//do-while 循环 int i=1; 做{ System.out.println(i); 我++; }而(我<=10);
无限循环的语法for(;;){ //要执行的代码 }while(true){ //要执行的代码 }do{ //要执行的代码 }while(true);

标签: java, Java面试题, Java下载, java教程, java技术, Java学习, Java学习教程, Java语言, Java开发, Java入门教程, Java进阶教程, Java高级教程, Java笔试题, Java编程思想