今天一读者高兴的跟我说:小强哥,我用Java语言把重要的事说3遍表达出来了。下面是他的代码。
public static void main(String[] args) {
System.out.println("我要学好Java");
System.out.println("我要学好Java");
System.out.println("我要学好Java");
}
上面的代码确实能够,连续3次打印出“我要学好Java”。那如果要打印100次呢?先然这种写法是不合理的。
Java中则有更好的实现方式,那就是利用循环结构。
在你想执行的操作多次时,循环结构就派上用场了。
Java中有三种主要的循环结构:
-
while 循环
-
do…while 循环
-
for 循环
while 循环
基本结构
while( 布尔表达式 ) {
// 循环执行的语句
}
只要while后的表达式为true,那就执行循环体中的语句。
用while循环连续3次输出“我要学好Java”
public static void main(String[] args) {
int count = 0;
final int times = 3;
while (count < times) {
System.out.println("我要学好Java");
count++;
}
}
当 count < times 为true时候,while循环就执行count + 1,并打印"我要学好Java"。
当 count < times 为false时候,while循环就停止了。
do…while 循环
基本结构
do {
//循环执行语句
}while(布尔表达式);
这个循环,先执行一次,再进行条件判断。它就是不管三七二十一,进来了先执行一次,再进行布尔判断,要是判断为false,大不了下次就不执行了。要是满足ture,好吧,我再执行一次,然后再判读一次。就这样循环。
do...while循环 连续3次输出“我要学好Java”
public static void main(String[] args) {
int count = 0;
final int times = 3;
do {
System.out.println("我要学好Java");
count++;
} while (count < times);
}
如果将int count = 0改为int count = 3,这个时候会打印一次“我要学好Java”。
for 循环
for循环是最常用的一种循环
for(初始化; 布尔表达式; 更新) {
//循环执行语句
}
初始化:这个只执行一次,是对变量的定义和初始赋值。
布尔表达式:第一次初始化完成后,进行布尔值判断,如果为false结束循环,如果为true,先执行循环体的执行语句,再对变量进行更新
变量更新:只有当布尔判断为true才执行,执行完后再进行布尔判断,重复上面的操作。
for循环 连续3次输出“我要学好Java”
public static void main(String[] args) {
final int times = 3;
for (int i = 0; i < times; i++) {
System.out.println("i:" + i);
System.out.println("我要学好Java");
}
}
执行程序的打印结果:
i:0
我要学好Java
i:1
我要学好Java
i:2
我要学好Java
控制循环的几个关键字
有时候,我们想根据自己的需求,来控制循环,就需要下面的几个关键字。
-
break
终止整个循环,继续执行循环结构后面的语句。
public static void main(String[] args) {
final int times = 3;
for (int i = 0; i < times; i++) {
System.out.println("i:" + i);
if (i == 1) {
break;
}
System.out.println("我要学好Java");
}
System.out.println("循环结束了");
}
结果:
i:0
我要学好Java
i:1
循环结束了
-
continue
终止本次循环,直接跳到下一步的循环中去。
public static void main(String[] args) {
final int times = 3;
for (int i = 0; i < times; i++) {
System.out.println("i:" + i);
if (i == 1) {
continue;
}
System.out.println("我要学好Java");
}
System.out.println("循环结束了");
}
结果:
i:0
我要学好Java
i:1
i:2
我要学好Java
循环结束了
-
return
直接结束改方法,这个关键字并不常用在循环的控制中。
直接贴代码
public static void main(String[] args) {
final int times = 3;
for (int i = 0; i < times; i++) {
System.out.println("i:" + i);
if (i == 1) {
return;
}
System.out.println("我要学好Java");
}
System.out.println("循环结束了");
}
结果:
i:0
我要学好Java
i:1