2021-9-20-学习日志9-循环语句3-跳转控制\循环嵌入\Random

本文介绍了Java中循环控制语句continue与break的使用方法,循环嵌套的应用场景,并详细讲解了如何利用Random类生成随机数及其实现猜数字游戏的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.跳转控制语句

continue 用在循环中,基于条件控制,跳过某次循环体内容的执行,继续下一次的执行

break 用在循环体中,基于条件控制,终止循环体内容的执行,也就是说结束当前的整个循环

/*
	continue 用在循环中,基于条件控制,跳过某次循环体内容的执行,继续下一次的执行
	break 用在循环体中,基于条件控制,终止循环体内容的执行,也就是说结束当前的整个循环
*/

public class continueDemo{
	public static void main(String[] args){
		for(int i = 1; i <= 5; i++){
			if(i % 2 == 0){
				break;	
			}
			System.out.println(i);	
		}
		System.out.println("--------");
		for(int j = 1; j <= 5; j++){
			if(j % 2 == 0){
				continue;
			}
			System.out.println(j);
		}
	}
}

DOS命令提示符窗口

C:\Users\Apple>d:

D:\>javac continueDemo.java

D:\>java continueDemo
1
--------
1
3
5

D:\>

2.循环嵌套

2.1)语句结构:

顺序语句:以分号结尾,表示一句话的结束

分支语句:一对大括号表示if的整体结构,整体描述一个完整的if语句

                  一对大括号表示switch的整体结构,整体描述一个完整的switch语句

循环语句:一对大括号表示for的整体结构,整体秒是一个完整的for语句

                  一对大括号表示while的整体结构。整体描述一个完整的while语句

                  do...while以分号结尾,整体描述一个完整的do...while语句

*注:

①任何语句对外都可以看成是一句话,一句代码

②分支语句中包含分支语句称为分支嵌套

③循环语句中包含循环语句称为循环嵌套

eg:

if(条件){

        Syso...

}

等同于

if(条件){

        if(条件){

        }else {

        }

}

注:第一段代码的syso 与 第二段代码的 if(条件){}else{} 部分

for(;;){

        for(;;){

                ......

        }

}

/*
	循环嵌套:
		循环语句包含循环语句
		
	需求:
		在控制台输出一天的小时和分钟
		
		分钟和小时的范围:
			分钟:0 <= minute <60
			小时:0 <= hour < 24
*/
public class forforDemo{
	public static void main(String[] args){
		/*
		System.out.println("0时0分");
		System.out.println("0时1分");
		System.out.println("0时2分");
		System.out.println("0时3分");
		System.out.println("--------");
		System.out.println("1时0分");
		System.out.println("1时1分");
		System.out.println("1时2分");
		System.out.println("1时3分");
		System.out.println("--------")
		System.out.println("2时0分");
		System.out.println("2时1分");
		System.out.println("2时2分");
		System.out.println("2时3分");
		*/
		
		//循环改进
		/*
		for(int minute = 0;minute < 4;minute++){
			System.out.println("0时" + minute + "分");
		}
		System.out.println("--------");
		
		for(int minute = 0;minute < 4;minute++){
			System.out.println("1时" + minute + "分");
		}
		System.out.println("--------");
		
		for(int minute = 0;minute < 4;minute++){
			System.out.println("2时" + minute + "分");
		}
		System.out.println("--------");
		*/
		
		//外循环控制小时的范围,内循环控制分钟的范围
		/*
		for(int hour = 0; hour < 3;hour++){
			for(int minute = 0; minute <4;minute++){
				System.out.println(hour + "时" + minute + "分");
			}
			System.out.println("--------");
		}
		*/
		
		for(int hour = 0; hour < 24;hour++){
			for(int minute = 0; minute <60;minute++){
				System.out.println(hour + "时" + minute + "分");
			}
			System.out.println("--------");
		}
	}	
}

3.Random的作用和使用步骤

作用:用于产生一个随机数

使用步骤:

①导包

import java.util.Random;

(导包的动作必须出现在类定义的上面)

②创建对象

Random r = new Random();

上面这个格式里面,r 是变量名,可以变,其他的都不允许变

③获取随机数

int number = r.nextInt(10);

(//获取数据的范围:[0,10]包括0.不包括10)

上面这个格式里面,number是变量名,可以变,数字10可以变,其他的都不允许变。其他的都不允许变

/*
	Random
	
	作用:
		用于产生一个随机数;
		
	使用步骤:
		1:导包
			import java.util.Random;
		2:创建对象
			Random r = new Random();
		3:获取随机数字
			int number = r.nextInt(10);
			获取数据的范围:[0,10]包括0,不包括10
*/

import java.util.Random;

public class RandomDemo{
	public static void main(String[] args){
		//创建对象
		Random r = new Random();
		
		//获取随机数
		int number = r.nextInt(10);
		System.out.println("number" + number);
	}
}

 DOS命令提示符窗口

C:\Users\Apple>d:

D:\>javac RandomDemo.java

D:\>java RandomDemo
number3

D:\>
/*
	Random
	
	作用:
		用于产生一个随机数;
		
	使用步骤:
		1:导包
			import java.util.Random;
		2:创建对象
			Random r = new Random();
		3:获取随机数字
			int number = r.nextInt(10);
			获取数据的范围:[0,10]包括0,不包括10
*/

import java.util.Random;

public class RandomDemo2{
	public static void main(String[] args){
		//创建对象
		Random r = new Random();
		
		//用循环获取10个随机数
		for(int i = 0;i < 10;i++){
			//获取随机数
			int number = r.nextInt(10);
			System.out.println("number" + number);
		}
		
		//需求:获取一个1-100之间的随机数
		int x = r.nextInt(100);
		System.out.println(x);
	}
}

DOS命令提示符窗口

C:\Users\Apple>d:

D:\>javac RandomDemo2.java

D:\>java RandomDemo2
number6
number5
number2
number9
number0
number4
number1
number8
number3
number7
15

D:\>

3.1)猜数字

需求:程序自动生成一个1-100之间的数字,实用程序实现猜出这个数字是多少?

           当猜错的时候根据不同情况给出相应的提示

        ①如果猜的数字比真实数字大,提示你猜的数据大了

        ②如果猜的数字比真实数字小,提示你猜的数据小了

        ③如果猜得数字与真实数字相等,提示恭喜你猜中了

分析:

①要完成猜数字的游戏,首先需要有一个要猜的数字,使用随机数生成该数字,范围1到100

Random r = new Random();

int number = r。nextInt(100) + 1;

②因为无法预知几次能够猜中,因此猜数字这个操作应该是反复进行的,需要使用循环,而while循环通常用于描述位置循环次数的循环

while (条件){}

③使用程序实现猜数字,每次均要输入猜测的数字值,需要使用键盘录入显示

Scanner sc = new Scanner(System.in);

int guessNumber = sc.nextInt();

④比较输入的数字和系统产生的数据,需要使用分支语句,这里使用if...else...if...格式,根据不同情况进行猜测结果显示,当猜中后使用break结束循环即可

if(条件:必要猜的数字大){

}else if(条件:比要猜的数字小){

}else{

break;

}

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

import java.util.Random;
import java.util.Scanner;

public class RandomDemo3{
	public static void main(String[] args){
		//要完成猜数字的游戏,首先需要有一个要猜的数字,使用随机数生成该数字,范围1到100
		Random r = new Random();
		int number = r.nextInt(100) + 1;
		
		while(true){
			//实用程序实现猜数字,每次均要输入猜测的数字值,需要使用键盘录入实现
			Scanner sc = new Scanner(System.in);
		
			System.out.println("请输入你要猜的数字:");
			int guessNumber = sc.nextInt();
		
			//比较输入的数字和系统产生的数据,需要使用分支语句,这里使用if...else...if格式,根据不同情况进行猜测结果显示
			if (guessNumber > number){
				System.out.println("你猜的数字" + guessNumber + "大了");
			}else if(guessNumber < number){
				System.out.println("你猜的数字" + guessNumber + "小了");
			}else {
				System.out.println("恭喜你!你猜中了!");
				break;
			}
		}
	}
}

DOS命令提示符窗口

C:\Users\Apple>d:

D:\>javac RandomDemo3.java

D:\>java RandomDemo3
请输入你要猜的数字:
68
你猜的数字小了
请输入你要猜的数字:
88
你猜的数字大了
请输入你要猜的数字:
80
你猜的数字小了
请输入你要猜的数字:
82
恭喜你!你猜中了!

D:\>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值