文章目录

  • 死循环
  • for循环嵌套
  • Random


死循环

  • 在不知道循环次数与天健判断语句时使用

for死循环

格式:
	for(;;){
	 循环体
	}

while死循环

while (true) {
	循环体
}

do while死循环

do {
		循环体
	}while (true);

注意:

  • 死循环不结束,后面的语句不会执行.

死循环不结束,后面的语句不会执行.

for循环嵌套

for (初始化语句; 条件判断语句; 条年控制语句) {
		循环体
	for (初始化语句; 条件判断语句; 条件控制语句) {
		循环体
	}
		循环体
}

for循环嵌套小练习

打印小时分钟表
public class Demo02 {
    public static void main(String[] args){

        for (int hour = 0; hour < 24; hour++) {   // 外循环的小时
            for (int minute = 0; minute < 60; minute++) {   // 内循环的分钟
                System.out.println(hour + "点" + minute + "分");
            }
        }
    }
}

Random

  • 生成随机数字
  • Random的使用
//1.导包
import java.util.Random;
public class Test01 {
	public static void main(String[] args) {
	//2创建Random对象
	Random r = new Random();
	//调用方法成随机数
	r.nextInt();
	}
}
生成指定范围
r.nextInt(范围);
可以是任何范围 ,但是要注意的是 括号中的范围是左闭右开区间
比如说:
	r.nextInt(100);  这里的取值范围是0 - 99
如果想生成指定范围 比如说 1 -100
 r.nextInt(100) + 1; 因为括号中的范围是0-99 在外面加1 就变成了了1 -100
 生成具体的范围公式 例如要生成一个 a - b 的范围
  公式为: (b - a + 1) + a
  **Random小案例**
  ```java
  /*

    程序自动生成一个1-100之间的数字,使用程序实现猜出这个数字是多少?
        当猜错的时候根据不同情况给出相应的提示
        A. 如果猜的数字比真实数字大,提示你猜的数据大了
        B. 如果猜的数字比真实数字小,提示你猜的数据小了
        C. 如果猜的数字与真实数字相等,提示恭喜你猜中了


        1. 获取随机数
        2. 获取键盘录入
        3. 比较
        4. 猜测比较应该放到循环中
            什么循环? 由于不明确循环次数使用while循环
            while(guessNumber!=randomNumber) (只要两个数字不想等就继续猜 -> 不好)

 */
public class Test01 {
    public static void main(String[] args) {

        // 创建随机数对象
        Random r = new Random();
        // 获取1 ~ 100 之间的随机数
        int randomNumber = r.nextInt(100) + 1;


        // 两个数字不相等, 就继续猜  (不好有问题, 转变思路)
        // 相等了就不猜了
        while (true) {

            // 创建键盘录入对象
            Scanner sc = new Scanner(System.in);
            // 猜数字, 获取键盘录入的数字
            System.out.println("请输入猜测的数字: ");
            int guessNumber = sc.nextInt();


            // 判断猜测的数字, 和随机数
            if (guessNumber > randomNumber) {
                System.out.println("你猜的数据大了!!!");
            } else if (guessNumber < randomNumber) {
                System.out.println("你猜的数据小了!!!");
            } else {
                // 相等
                System.out.println("恭喜你猜中了!~~~");
                // 相等了就不猜了(结束循环)
                break;
            }
        }

    }
}