Java基础知识之跳转语句、循环标号多级break跳出实现、Random库

一、跳转语句continue

1、基本说明
在Java中的continue和其他编程语言用法是差不多是相同的,continue;可以用于跳过某次循环体内容的执行。
需要注意的是,一般情况是通过基本条件控制语句满足条件再执行,在循环内部使用。

2、案例:电梯总共10楼,但4楼和6楼是禁止入内的

public class Test03{
    
    
	public static void main(String[] args){
    
    
		for(int i=1; i<11; i++){
    
      //从1楼开始遍历,总共有10楼
			if(i==4 || i==6){
    
      //若电梯不允许在4楼和6楼停下,因此将继续向上
				continue;
			}
			System.out.println("The elevator is to the floor" + i + "!");
		}
	}
}

1.2.1

二、跳转语句break

1、基本说明
用于终止循环体内容的执行,只能用在switch和循环体内,break;的作用就是跳出。

2、示范

public class Test03{
    
    
	public static void main(String[] args){
    
    
		for(int i=25; i<100; i++){
    
      //从25开始遍历
			if(i==65){
    
      
				break;
			}			
		}
		System.out.println("You are off it!");  //循环跳出后提示
	}
}

3、有了break,死循环后面的内容就不会报错

public class Test03{
    
    
	public static void main(String[] args){
    
    
		int i=25;
		while(true){
    
     
			i++;
			System.out.println("I am continuing~"); 	
				if(i==65){
    
    
					break;
				}
		}
		System.out.println("I am over!");  //循环跳出后提示
	}
}

4、区别

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

三、循环标号多级break

1、基本说明
break和continue只能跳出、跳过自己所在的那一层关系,如果想要跳出、跳过指定的一层
就可以加入标号。

2、示例

标号名:while(true){
	switch(表达式){
		case 1:
			break 标号名;
	}
}

3、案例:输入星期数,输出对应日程,直到输入0跳出

import java.util.Scanner;  //导入键盘录入库
public class Test03{
    
    
	public static void main(String[] args){
    
    
		Scanner sc = new Scanner(System.in);  //实例化用于输入的对象sc
		
		looping: while(true){
    
       //定义一个死循环,标号命名为looping
			System.out.println("请输入星期数:");  //每次进入循环都提示输入星期数
			int week = sc.nextInt();  //用输入对象sc获取键盘值,赋值给week变量
			
			switch(week){
    
    
				case 0:  //若出入0,则跳出死循环
					break looping;  //意思是跳出looping这个标号的循环体
				case 1:  //因为前3天都是工作日,利用switch的穿透现象来实现代码量减少
				case 2:
				case 3:
					System.out.println("工作日");
					break;  //该break只会跳出switch,并不会跳出while死循环
				case 4:
					System.out.println("休息日");
					break;  //该break只会跳出switch,并不会跳出while死循环
				case 5:
					System.out.println("外出游玩");
					break;  //该break只会跳出switch,并不会跳出while死循环
				case 6:
					System.out.println("工作会议");
					break;  //该break只会跳出switch,并不会跳出while死循环
				case 7:
					System.out.println("打高尔夫");
					break;  //该break只会跳出switch,并不会跳出while死循环
				default:
					System.out.println("请你诚实,星期" + week + " 根本不存在!");
			}
		}
		System.out.println("I am done!");  //循环跳出后提示
	}
}

3.3.1

四、Random库

1、基本说明
(1)用于产生随机数

(2)步骤分为:导包、创建对象、调用对象获取随机数。

(3)用法

import java.util.Random;  //导入随机数库
public class Test03{
    
    
	public static void main(String[] args){
    
    
		Random ro = new Random();  //创建产生随机数的对象ro
		for(int i=0; i<5; i++){
    
    
			//产生5个10到20的随机数并输出
			//默认是从0-10的随机数,要将最低数设为10,只能在后面加上10,即0+10,1+10,2+10……
			int num = ro.nextInt(10)+10;  
			System.out.println(num);  //输出
		}
		System.out.println("I am over!");  //循环跳出后提示
	}
}

4.1.1

2、猜数字游戏
(1)需求:程序自动生成一个1-100之间的数字,输入猜测的值,看看是否猜对。

(2)需求分析
①要完成猜数字的游戏,首先需要有一个要猜的数字,使用殖机数生成该数字,范围1到100;
②因为无法预知几次能够猜中,因此猜数字这个操作应该是反复进行的,需要使用循环,而while循环通常用于描述末知循环次数的循环;
③使用程序实现猜数字,每次均要输入猜测的数字值,需要使用键盘录入实现;
④比较输入的数字和系统产生的数据,需要使用分支语句。这里使用if else if格式,根据不同情况进行猜测结果显示,当猜中后使用break结束循环即可。

3、猜数字练习代码

import java.util.Random;  //导入随机数库
import java.util.Scanner;  //导入输入数据的库
public class Test03{
    
    
	public static void main(String[] args){
    
    
		Random ro = new Random();  //创建产生随机数的对象ro
		Scanner sc = new Scanner(System.in);  //创建输入数据的对象sc
		
		while(true){
    
      //死循环,没猜对就一直猜
			int num = ro.nextInt(5)+1; //产生1-5的随机数
			System.out.println("请在1-5之间随便猜一个数:");
			int data = sc.nextInt();  //获取键盘输入
			
			if(data<1 || data>5){
    
    
				System.out.println("是1-5之间的数哦!");
				continue;  //猜得不对,直接回到循环体继续循环
			}else if(data < num){
    
    
				System.out.println("猜小了!");
			}else if(data > num){
    
    
				System.out.println("猜大了!");
			}else if(data == num){
    
    
				break;  //猜对了才跳出死循环
			}
		}
		System.out.println("恭喜,您猜对啦!");  //循环跳出后提示
	}
}

4.3.1

猜你喜欢

转载自blog.csdn.net/Viewinfinitely/article/details/119908491