@Fcy三大循环结构
while do-while for循环结构
循环结构如下:
1.while(条件){语句}
2.do{语句}while(条件)
3.for(表达式1;表达式2;表达式3){语句} (常用)
注意:三个表达式都可以省略
小试牛刀通过do-while循环做了一个猜字游戏
要求猜一个介于1到10之间的数字。然后将猜测的值与实际值进行比较,并给出提示,以便能更接近实际值,直到猜中为止。
代码如下:
import java.util.Scanner;
public class guessgame {
public static void main(String[] args) {
//输入一个数字
Scanner scanner = new Scanner(System.in);
//随机生成1-10之间的整数
int i = (int) (Math.random() * 10);
System.out.println("请输入你猜的数字:");
//将输入的数声明为新的变量,方便与随机生成数比较
int s =scanner.nextInt();
do {
if (s<i) {
System.out.println("小了");
s = scanner.nextInt();
} else if(s>i){
System.out.println("大了");
s = scanner.nextInt();
}else if (s==i){
System.out.println("你赢了");
//该代码运行一次后停止
System.exit(1);
}
}while (true);
}
}
三种循环使用场景
1.for循环:因为执行语句顺序是固定的,适用于循环次数固定的的场景。
2.while循环:只有一个条件,结果为布尔值,为true就执行,false就跳出循环。所以while适用于只知道循环条件不知道循环次数的场景。注意:循环内一般要对循环变量作出改变,不然会陷入死循环
3.do-while循环:与while相似,只是循环条件放在最后,不管怎么样都至少会循环一次。适用于知道循环条件不知道循环次数,并且循环至少一次时使用。
嵌套循环
分别用不同的嵌套循环实现10行10列的*组成的矩形
1.while-while嵌套循环
public static void main(String[] args) {
int i=1;
int j=1;
while (i<=10){
while (j<10){
j++; //j=2
System.out.print("* ");
}
j=1;
System.out.println("* ");
i++;
}
}
2.for-for循环
public static void main(String[] args) {
for(int i=1;i<=10;i++){
for(int j=1;j<10;j++){
System.out.print("* ");
}
System.out.println("* ");
}
}
嵌套循环里需要注意的是:外循环执行一次,内循环全部执行;这样内循环是不会影响外循环的执行的。