while循环
while (布尔表达式){
循环体;
}
- 执行原理: 只要布尔表达式为true就一直循环,直到布尔表达式为false
- while循环体的执行次数可能是 0 ~ n 次
- for循环适用于循环次数固定的,while循环适用于循环次数不固定的
package chapter2;
/*
猜数字游戏,系统生成1 ~ 100 之间的一个随机数,要求用户猜这个数是多少,程序做出相应的提示
如果猜中了就输出恭喜信息,并记录猜的次数,如果猜错了可以提示用户再猜一次
*/
import java.util.Random;
import java.util.Scanner;
public class while01 {
public static void main(String[] args) {
//生成随机数
Random random = new Random();
int randomNum = random.nextInt(100) + 1;
// System.out.println("随机数 " + randomNum);
//创建键盘扫描器对象
Scanner scanner = new Scanner(System.in);
int count = 0;
while (true) {
count++;
System.out.println("请输入你要猜测的数字");
int guess = scanner.nextInt();
if(guess == randomNum) {
System.out.println("恭喜你猜对了");
System.out.println("您一共猜了" + count + "次");
//终止程序的执行
return;
}else if(guess > randomNum){
System.out.println("猜大了");
}else {
System.out.println("猜小了");
}
}
}
}
do-while 循环
do {
循环体
}while (布尔表达式);
- 执行原理,先执行一次循环体,在判断布尔表达式,直到布尔表达式的结果为false,循环结束
- do -while循环体的执行次数可能是 1 ~ n次 (区别于while)
- do-while循环 最后 有一个 “;”
- do-while 循环比较适合不管条件是否成成立,第一次必须要执行的业务
package chapter2;
public class dowhile01 {
public static void main(String[] args) {
//死循环
// do{
// System.out.println("循环体执行了");
// }while (true);
int i = 0;
do{
System.out.println("i = " + i);
i++;
}while (i < 10);
System.out.println("-----------------------");
int j = 0;
do{
j++;
System.out.println("j = " + j);
}while (j < 10);
}
}
break 和 return
package chapter2;
public class breakAndReturn {
public static void main(String[] args) {
for (int i = 0; i < 10; i++){
if(i == 5){
//break;
return;
}
System.out.println("i = " + i);
}
System.out.println("hello world");
}
}
显然,输出结果没有 :“helloworld”。
因为 break 终止整个循环,而return 终止了整个方法。