Java for循环
在编程语言中,当某些条件为真时,循环用于重复执行一组指令/功能。 Java中有三种循环类型。
for循环
while循环
do-while循环
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(int i = 1; i<= 10; i ++){ System.out.println(i); } |
int i = 1; while(i<=10){ System.out.println(i); i++; } |
int i = 1; do{ System.out.println(i); i++; } while(i<= 10); |
for(;;){ //要执行的代码 } |
while(true){ //要执行的代码 } |
do{ //要执行的代码 } while(true); |
Java For循环
Java
for循环用于多次迭代程序的一部分。如果迭代次数是固定的,则建议使用for循环。
java中有三种类型的for循环。
for
foreach
不定式for循环
Java Simple For循环
简单的for循环与C相同/C++。我们可以初始化
变量,检查条件和增量/减量值。它由四个部分组成:
初始化: 这是循环开始时执行一次的初始条件。在这里,我们可以初始化变量,也可以使用已经初始化的变量。这是一个可选条件。
条件: 这是第二次条件,每次执行时都要测试循环条件。它继续执行直到条件为假。它必须返回布尔值true或false。这是一个可选条件。
声明: 每次执行循环语句,直到第二个条件为假。
增加/减少: 它增加或减少变量值。这是一个可选条件。
语法:
for(initialization;
condition;
incr/decr){
//statement or code to be executed}
流程图:
示例:
public class ForExample {
public static void main(String[] args) {
for(int i=1;i<=10;i++){
System.out.println(i);
}
}
}
输出:
Java嵌套For循环
如果另一个循环中有一个for循环,则称为嵌套for循环。每当执行外循环时,内循环就完全执行。
示例:
public class NestedForExample {
public static void main(String[] args) {
for(int i=1;i<=3;i++){
for(int j=1;j<=3;j++){
System.out.println(i+" "+j);
}
}
}
}
输出:
1 1
1 2
1 3
2 1
2 2
2 3
3 1
3 2
3 3
金字塔示例1:
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:
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(Type var:array){
//code to be executed}
示例:
public class ForEachExample {
public static void main(String[] args) {
int arr[]={12,23,44,56,78};
for(int i:arr){
System.out.println(i);
}
}
}
输出:
标为For循环的Java
我们可以为每个Java for循环取一个名称。为此,我们在for循环之前使用label。如果我们嵌套了for循环,那么我们可以中断/继续特定于for循环,这很有用。
通常,break和continue关键字仅中断/继续最里面的for循环。
语法:
labelname:for(initialization;
condition;
incr/decr){
//code to be executed}
示例:
//A Java program to demonstrate the use of labeled for looppublic class LabeledForExample {
public static void main(String[] args) {
for(int i=1;i<=3;i++){
for(int j=1;j<=3;j++){
if(i==2&&j==2){
break aa;
}
System.out.println(i+" "+j);
}
}
}
}
输出:
如果使用
break bb; ,它将仅中断内部循环,这是任何循环的默认行为。
public class LabeledForExample2 {
public static void main(String[] args) {
for(int i=1;i<=3;i++){
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(;;){
//code to be executed}
示例:
public class ForExample {
public static void main(String[] args) {
for(;;){
System.out.println("infinitive loop");
}
}
}
输出:
infinitive loop
infinitive loop
infinitive loop
infinitive loop
infinitive loop
ctrl+c
现在,您需要按ctrl + c退出程序。