只要给定条件为真,Java编程语言中的while
循环语句就会重复执行目标语句。
语法
while
循环的语法是 -
while(boolean_expression) {
// 执行语句
}
这里,语句可以是单个语句或语句块。 条件(boolean_expression
)可以是任何表达式,true
是任何非零值。
执行时,如果boolean_expression
结果为true
,则执行循环内的操作。只要表达式结果为true
,它将继续执行。
当条件变为false
时,程序控制将传递到紧接循环之后的代码。
这里,while
循环有一个关键点是循环可能永远不会运行。 当测试表达式并且结果为false
时,将跳过循环体并且将执行while
循环之后的第一个语句。
示例1. Java while循环
这是一个简单的java while循环示例,用于打印5
到10
之间的数字。
//package com.zaixian.javawhileloop;
public class JavaWhileLoop {
public static void main(String[] args) {
int i = 5;
while (i <= 10) {
System.out.println(i);
i++;
}
}
}
请注意,在循环中增加了i
的值,否则while
循环永远不会终止,因为它变成了无限循环。 终止程序在无限循环中运行的唯一方法是手动退出它或JVM内存不足时。
请注意,如果布尔表达式返回false
,则while
循环内的语句将不会执行。 所以while
循环中的语句有可能永远不会执行。
示例2. Java迭代循环与迭代器
Java while
循环在java中经常与迭代器一起使用。 下面来看一个使用while
循环迭代ArrayList
的简短示例。
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class JavaWhileLoop {
public static void main(String[] args) {
List<String> veggies = new ArrayList<>();
veggies.add("油麦菜");
veggies.add("红豆角");
veggies.add("西红柿");
Iterator<String> it = veggies.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
}
}
执行上面示例代码,得到以下结果 -
油麦菜
红豆角
西红柿
示例3. while无限循环示例
有时希望循环无限运行。在这种情况下,可以使用while
循环。 无限运行的一个例子是在特定位置连续查找文件,如果找到则然后处理它。 下面是java中while
循环的伪代码示例。
//package com.zaixian.javawhileloop;
public class WhileTrueJava {
public static void main(String[] args) {
while(true) {
System.out.println("开始处理");
// 在特定目录中查找文件
// 如果找到则处理它,比如将文件信息插入数据库
System.out.println("结束处理");
// 等待10秒,再继续处理...
try {
Thread.sleep(10*1000);
} catch (InterruptedException e) {
System.out.println("Thread Interrupted, exit now");
System.exit(0);
}
}
}
}
如果运行上面的程序,需要在终端上使用Ctrl + C
手动退出程序。 如果使用的是Eclipse,则会有一个红色按钮来终止当前正在运行的程序。
上一篇:
java中方法重载和方法重写的区别
下一篇:无