while循环及嵌套选择结构

智慧矿山无人机空地一体化解决方案 未来,随着技术的不断进步和应用场景的不断拓展,智慧矿山无人机空地一体化解决方案将在矿业领域发挥更加重要的作用,为矿山的可持续发展提供更加有力的保障。该系统能够实现矿山的全方位、全天候监测与管理,提升矿山生产效率,降低安全风险,并为矿山的可持续发展提供有力支持。智慧矿山无人机空地一体化解决方案是当前矿业领域技术创新的重要方向,旨在通过集成无人机技术、物联网、大数据、人工智能等先进技术,实现矿山的智能化、高效化和安全化运营。在矿山爆破、挖掘等危险作业中,无人机可进行远程监控和指挥,降低人员安全风险。 阅读详情

switch case(下)

1.1 结构概述

这里使用的switch - case结构是一个可以在很多开发语言中 通用使用的

switch (/* 变量 */) { 
	case 常量选择1: 
			// 处理方式1; 
					break; 
	case 常量选择2: 
			// 处理方式2; 
					break; 
	case 常量选择3: 
			// 处理方式3; 
					break; 
	default: 
			// 最终处理方式; 
					break; 
}

1.2 执行流程:

代码运行到switch case结构首先取出switch之后小括号中变量保存的数据
匹配switch 大括号以内的case选择,找到对应的常量选择匹配。
如果找到了对应的匹配选择,执行对应的处理方式。
如果没有找到匹配选择,执行default里面的处理方式。
这里【break】关键字用于结束switch case运行

//首先导入Scanner的包
import java.util.Scanner;

class Demo1 {
	public static void main(String[] args) {
		/*
		以switch case做一个菜单 并标注价格
		客人可通过控制台点餐
		
		1.胡辣汤 5元一份
		2.包子 6元一屉
		3.肠粉 5元一份
		4.云吞 6元一份
		*/
		
		/*需要一个整数类型变量,这里我们使用
		一个int类型的变量并给予一个初始化数值
		*/
		
		int select = 0;
		Scanner sc = new Scanner(System.in);
		//提升用户输入1~4的选择
		System.out.println("1.胡辣汤 5元一份");
		System.out.println("2.包子 6元一屉");
		System.out.println("3.肠粉 5元一份");
		System.out.println("4.云吞 6元一份");
		System.out.println("请选择吃什么,输入1~4选择");
		select = sc.nextInt();
		
		
		switch (select) {
			case 1 :
				System.out.println("胡辣汤 5元一份");
				break;
			case 2 :
				System.out.println("2.包子 6元一屉");
				break;
			case 3 :
				System.out.println("3.肠粉 5元一份");
				break;
			case 4 :
				System.out.println("4.云吞 6元一份");
				break;
			default :
				System.out.println("输入数据不对");
				break;
		}
	}
}	

1.2 switch - case使用注意事项

1.3 总结

  1. 在switch - case结构中,有且只能执行case,或者default 之后的语句。如果存在在case 和default之外的语句,是无法执行 的,对于Java而言是无效代码。
    unreachable code

  2. 在switch - case结构中,如果存在case或者default选择缺 少break操作。代码会继续运行到下一个break或者大括号 } (switch case结尾大括号) 终止switch - case!!

  3. 在switch - case结构中,不允许出现相同的case选项,代码 无法进行操作选择,因为所有case选择是平级的

  4. 在switch - case结构中,default可以省略,代码编译不会 受到影响,没有语法错误。但是失去switch case自带的一种异常 情况处理方式。

  5. AJCG阿里巴巴Java开发规范中,是不推荐省略default

    2. while循环

    2.1 为什么要用循环:
    生活中很多重复的事情,周而复始 吃饭,睡觉,撸猫,学习,上课…

    代码中一定存在需要循环出现的情况,如果不使用循环,会导致以下 一些问题

     		  阅读性极差!!! 
     		 
     		  维护性极差!!! 
     		  
     		  代码冗余!!!
    
 while (/* 循环条件 true or false */) {
 	// 循环体 
 		// (循环条件变更) 
 }
 /*
 执行流程: 当前程序运行到while循环结构时,首先判断while之后的小括 号里面的循环条件是否为true,如果
 为true,执行循环体,在回到 循环条件判断,直到循环条件为false,终止循环!!!
/*
while 循环结构 展示数值 1 ~ 100 所有数值的和 
*/
class Demo2 { 
	public static void main(String[] args) { 
		// 循环使用的变量,int类型,变量名 i 初始化为 1 int i = 1; 
		// 保存1 ~ 100相加之和的变量 sum int sum = 0; 
		// 利用while循环 
		while (i <= 100) { 
			sum += i; 
			i += 1; 
		}
		System.out.println("Sum : " + sum); 
		// 利用循环可以解决问题,但是在开发中是需要使用一 些数学公式
		// 来提高我们的开发效率 
		System.out.println((1 + 100) * 50); 
	} 
}

2.2 do while :

do {
	// 循环体 
	// (循环条件变更) 
} while (/* 循环条件判断 */); 
/*
执行流程: 当程序执行到do - while循环结构时,首先执行一次循环体 (循环条件变更),再来判断while中循环
条件判断是否为true,如 果为true,继续执行,如果为false,终止循环。 
【注意】
1. while(condition); 这里英文分号 
2. 执行do - while需要明确第一次循环会不会存在隐患 
*/
/*
使用do - while循环,展示1 ~ 100 所有的偶数 
*/
class Demo3 { 
	public static void main(String[] args) { 
		/*
		定义一个循环变量 i. int数据类型,初始化为1 
		*/
		int i = 1; 
		/*循环执行 100次 if分支结构判断执行 100次 总时间 200单位时间 
		*/
		do {
		// 嵌套了一个if分支,条件判断
			if (i % 2 == 0) { 
				System.out.println("i = " + i); 
			}i += 1; 
		} while (i <= 100); 
		System.out.println("--------------------------"); 
		int j = 2; 
		/*
		循环执行 50 次 总时间 50单位时间,在实际开发中要考虑性能和优化 
		*/
		do {System.out.println("j = " + j); 
			j += 2; 
		} while (j <= 100); 
	} 
}

import java.util.Scanner;

class Demo2 {
	public static void main(String[] args) {
		
		/*
		使用while循环,完成一个点菜系统 
			1. 完成用户的点菜功能 
			2. 点菜之后输出总价 
			3. 用户指定方式退出 
		*/
		
		/*
		条件分析
			1.首先要用到控制台
			2.需要一个int类型数据来表示不同菜品,并需要
				另一个初始化数值为0的变量来记录一共多少钱
			3.用户要点多个菜
			4.要进行判定用户是否满足了需求而退出系统
		*/
		
		int inAll = 0;
		int menu = 0;
		Scanner sc = new Scanner(System.in);
		//提示用户选择菜品
		System.out.println("请选择要点什么");
		System.out.println("-----菜单-----");
		System.out.println("1.青椒土豆丝:20");
		System.out.println("2.孜然羊肉:45元");
		System.out.println("3.新疆拌面:20");
		System.out.println("4.紫菜蛋花汤:8元");
		System.out.println("5.买单");
		
		while (menu != 5) {
			menu = sc.nextInt();
			System.out.println();
			switch(menu) {	
				case 1 :
					System.out.println("青椒土豆丝:20");
					
					inAll += 20;
					break;
				case 2 :
					System.out.println("孜然羊肉:45元");
					
					inAll += 45;
					break;
				case 3 :
					System.out.println("新疆拌面:20");
					
					inAll += 20;
					break;
				case 4 :
					System.out.println("紫菜蛋花汤:8元");
					
					inAll += 8;
					break;
				case 5 :
					System.out.println("买单");
					
					break;
				default :
					System.out.println("输入错误");
					break;
			}
		}
		System.out.println("共计消费" + inAll);
	}
}
  1. 循环过程中最核心的内容就是循环变量,需要对于循环变量的执 行的过程中数值变量完全掌握!!!如果无法明确循环的次数,循环 变量的值,循环的过程,可以将循环代码中变量的变更过程记录。

  2. 循环过程中需要注意无限循环问题,控制无限循环问题的出现。 一定要保证循环条件有效性或者代码中存在一个跳出循环的机制。

  3. do while循环中,第一次循环体的执行是没有经过任何的条件 判断的,需要注意! 【已知,可控】

本地搭建 GitLab 14.1.0版本CI/CD GitLab 镜像版本 gitlab/gitlab-ce:14.1.0-ce.0 GitLab Runner 镜像版本 gitlab/gitlab-runner:v14.1.0 搭建此套环境是在一台32G的windows电脑上安装的。 使用dokcer安装。 此外还涉及的软件Docker Desktop,WSL 安装GitLab 首先启动 dockcer,打开WSL 打开后 首先定义GitLab的持久化目录 export GITLAB_HOME=/srv/gitlab 然后运行安装GitLab的命令 阅读详情

相关推荐

Materials Studio多层聚合物建模全流程:从Build Layers到LAMMPS data文件导出避坑指南

本文详细解析了使用Materials Studio构建多层聚合物模型并导出为LAMMPS data文件的全流程。重点剖析了Build Layers工具的核心逻辑、真空层处理技巧,并提供了解决导出过程中Z轴坐标偏移问题的实战方案,特别是如何利用msi2lmp工具的-shift参数进行精准校正,确保模型在LAMMPS中模拟的稳定性和准确性。

hhh00的博客 914

Shell运维实战3-while、case、for、select

shell运维实战第三篇 主要介绍while以及case、for循环的主要使用方式

delete_you的博客 907

Codesys软运动控制进阶:用SMC_FreeEncoder为ECAT轴搭建一个“虚拟手轮”调试工具

本文详细介绍了如何利用Codesys的SMC_FreeEncoder功能为ECAT轴搭建虚拟手轮调试工具,解决自动化设备开发中的硬件依赖问题。通过软件模拟手轮脉冲信号,实现无硬件依赖的运动控制逻辑验证,显著提升调试效率。适用于汇川AM400等PLC平台,特别适合机械安装滞后或伺服驱动器故障时的调试场景。

weixin_33737774的博客 482

Linux中select函数在循环中使用注意事项

在学习select函数时遇到一个问题,在循环中调用select函数,并设置了超时退出。循环第一次超时退出,第二次瞬间退出。使用select的部分代码如下:int main() {     int maxfd = -1;     fd_set read_fd;    struct timeval tv;//设置时间     tv.tv_sec = 1;     tv.tv_usec = 500000...

qq_40735311的博客 1541

PyTorch复现EEG-TCNet踩坑记:从BCI IV2a数据到TCN块缺失的完整解决方案

本文详细解析了使用PyTorch复现EEG-TCNet模型的全过程,重点解决了BCI IV2a数据集预处理和TCN模块缺失的技术难题。通过标准化数据流程、跨受试者验证策略以及三种因果卷积实现方案,为运动想象分类任务提供完整解决方案,帮助研究者高效实现模型复现与优化。

weixin_30699955的博客 319

LoRaWAN数据包分析工具

前言:LoRaWAN的射频数据包是加密的,而且有些字段是某个字节的某几位,看着不是那么直观,因此在某些情况下需要借助工具来分析数据包。 1、安装npm 这个工具是用JavaScript写的,其中用到了一些依赖库,而npm就可以一次性把这些依赖库下载下来,因此我们先要下载安装npm这个工具。 安装:sudo apt install npm 输入y,等待安装完成: 检查是否安装成功:npm -v 说明安装完成。 2、安装LoRa数据包分析工具lora-packet 安装:npm i.

freemote的博客 4632

case和for、while循环详解

case—流程控制语句 循环语句 while循环语句和循环嵌套 实战-3个shell脚本 一、流程控制语句:case 控制语句:用来实现对程序流程的选择、循环、转向和返回进行控制。case是开关语句的一个组成部分;它是根据变量的不同进行取值比较,然后针对不同的取值分别执行不同的命令操作 适用于多分支,是一个多选择语句 语法结构: case 变量或表达式 in 变量或表达式1) 命令序列1 ;;...

菜鸟、上路 1万+

【文献阅读】使用深度语音后验改进独立于说话者的构音障碍可懂度分类

原文名称:本文探讨了利用DeepSpeech后验概率改进说话人无关的构音障碍可理解性分类方法。作者提出了一个基于DeepSpeech(一种端到端的语音转文本引擎)输出的新特征集,用于评估构音障碍患者的语音可理解性。这些新特征在说话人无关的情况下表现良好,能够更好地处理不同说话人的变异性。背景介绍:数据集:特征提取:实验设置:结果:本文提出的新特征集在说话人无关的构音障碍可理解性分类任务中表现出色,特别是在低可理解性和高可理解性类别上。未来的工作将集中在减少低可理解性和中可理解性类别之间的混淆,以进一步提高系

帅小柏的博客 452

【shell基础(12)循环之while、select】while:管道、重定向循环读取文件;select:菜单拓展循环

【shell基础(12)循环之while、select】while:管道、重定向循环读取文件;select:菜单拓展循环

hiliang521的博客 943

大数据架构中的数据治理:元数据管理与数据血缘追踪实践

本文将聚焦大数据架构中数据治理的两大核心支柱——元数据管理与数据血缘追踪元数据管理的目标、类型与实施步骤(从需求分析到工具落地);数据血缘追踪的技术实现(静态解析、动态捕获、混合方案)与应用场景;如何将两者结合,构建完整的数据治理体系,并通过真实案例展示落地效果。元数据管理:定义了业务/技术/操作元数据,讲解了工具选型(如Apache Atlas)、采集(Hook/API)、存储(关系库+图数据库)、应用(数据发现、质量监控);数据血缘追踪。

欢迎来到我的优快云空间!这里聚焦AI大模型应用实战,分享前沿技术、实战案例与开发经验。 868

STM32Cube高效开发教程<高级篇><FreeRTOS>(一)-----FreeRTOS基础

一、 FreeRTOS概述声明:本人水平有限,博客可能存在部分错误的地方,请广大读者谅解并向本人反馈错误。本专栏博客参考《STM32Cube高效开发教程(高级篇)》,有意向的读者可以购买正版书籍辅助学习,本书籍由王维波老师、鄢志丹老师、王钊老师倾力打造,书籍内容干货满满。写在前面:今天就算正式开始高级篇的博客编写了,我本人也是第一次学习FreeRTOS,所以整体的进度会比较慢,博客更新可能不太会及时,希望大家原谅。一、 FreeRTOS概述。

我的博客 1848

SQL SERVER while 循环

WHILE (SELECT AVG(SSCORE) FROM STABLE) < 300 --条件1 ,平均分没达到300分,进入循环的条件,也可能是结束循环条件。IF (SELECT MAX(SSCORE) FROM STABLE) > 600 --条件2,最大分不能大于600分,退出循环的条件。SELECT MAX(SSCORE) FROM STABLE --中间查询语句,可以清楚看到执行后的变化效果。SELECT AVG(SSCORE) FROM STABLE --查询更改后的平均数。

m0_57941063的博客 737

基于若依的ruoyi-nbcio-plus支持VForm3表单字段数据保存到数据库的一种方法——全网首创(三)

基于若依的ruoyi-nbcio-plus支持VForm3表单字段数据保存到数据库的一种方法——全网首创(三)

宁波阿成的博客 525

python 三元条件运算符 多分支选择结构 if条件语句的选择结构嵌套 while循环 for循环 九九乘法表

1,三元条件运算符,用在某些简单的双分支赋值情况 格式如下: 条件为真时的值 if(条件语句) else 条件为假时的值 >>> a=-3 >>> print("a是大于0的数字" if a>0 else "a是小于0的数字") a是小于0的数字 >>> a=8 >>> print(a if a<10 e...

嘎嘎_哈 1292

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Java的流程控制语句:选择结构 if/switch、循环结构 for/while、do...while、循环嵌套

流程控制语句 ​ 顺序结构 : 从上到下,从左到右–>默认 ​ 选择结构 : 满足条件执行对应的代码 ​ 循环结构 : 让一些代码重复不停的执行多次 选择结构 ​ if 区间判断|定值判断 ​ switch 定值判断 ​ 能用switch的都能if,能用if不一定能够使用switch if ​ 单选择|单分支 ​ if(条件表达式){ ​ 满足条件执行的代码段; ​ } ​ 条件表达式 : 必须为一个值为boolean的表达式 ​ 执行流程: ​ 1.计算条件

GEM_NO_1的博客 382

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

流程控制_顺序结构_选择结构_if单选择结构_if双选择结构_if多选择结构_嵌套的if结构_switch多选择结构_循环结构_while循环_do...while循环_for循环_增强for循环

由此可得知, 当有一个条件达成时, 且没有退出switch判断时后续的所有case内的代码都将执行, 直到退出switch判断或执行完所有case时停止;布尔表达式为true则执行代码块**( {} 由正反大括号组成的结构也叫做代码块)**内的语句,布尔表达式为false则跳过代码块内容。可以看到if判断的代码块执行后continue之前的输出执行了,continue之后的所有代码包括代码块外的语句也没有执行。 0-100之间的奇偶数的和_ _1-1000之间能被5整除的数_九九乘法表_打印三角形.....

YAOSHI_XXZZ的博客 451

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

java:if选择结构、switch分支结构、局部、全局变量、while循环、do while循环、for循环、流程控制关键字、嵌套循环

如果变量中的值没有匹配的case值时,执行default中的逻辑代码。注意:当匹配的case执行后,不会自动退出整个结构,而是继续向下执行。特点:首次即有入口条件,先判断、再执行,适用于循环次数明确的情况。概念:在一个完整的循环结构中,嵌套另一个完整的循环结构。结果为false,则跳过代码块,直接执行后续代码。结果为true,则先执行代码块,再执行后续代码。未满足时的逻辑代码;如果变量中的值等于值1,则执行逻辑代码1。如果变量中的值等于值2,则执行逻辑代码2。如果变量中的值等于值n,则执行逻辑代码n。

qs15934519266的博客 282

分支结构 switch 选择结构 switch if() else{ } 循环 for while 循环嵌套

1    switch语法结构                    switch(表达式){  // 1.各case的常量不能重复2.表达式的取值:基本数据类型:byte short char int引用数据类型:String(JDK1.7及以上)  枚举3.switch的穿透性。如果进入某个case块了,但是该块中没有break,那么他将穿透进入下一个case,知道遇到break或者switc...

小可爱的男朋友 435

python条件运算符的嵌套如何使用_python 三元条件运算符 多分支选择结构 if条件语句的选择结构嵌套 while循环 for循环 九九乘法表...

版权声明:署名,允许他人基于本文进行创作,且必须基于与原先许可协议相同的许可协议分发本文 (Creative Commons)1,三元条件运算符,用在某些简单的双分支赋值情况格式如下:条件为真时的值 if(条件语句) else 条件为假时的值>>> a=-3>>> print("a是大于0的数字" if a>0 else "a是小于0的数字")a是小于0的...

weixin_35838019的博客 804

Java流程控制(用户交互Scanner—Scanner进阶使用、顺序结构、选择结构—if单选择结构-嵌套的if结构-switch多选择结构、循环结构-while循环-for循环、continue)

Java流程控制(用户交互Scanner—Scanner进阶使用、顺序结构、选择结构—if单选择结构-嵌套的if结构-switch多选择结构、循环结构-while循环-for循环、continue)

A_Xunla的博客 368

java顺序结构 if选择结构 if多选择结构 嵌套if switch多选择 while循环 do...while循环

1.顺序结构 java 最基本的结构就是顺序结构,除非特别指明,否则按顺序一句一句执行。 他也是最简单的算法结构。 最重要的是,他是任何一个算法都离不开一种基本算法结构。 2.if选择结构 if单选择结构 if(布尔表达式){ //如果布尔表达式结果是true,那么会执行。反之,不会执行。 } if双选择结构(if—else结构) if() { //布尔表达式值为true,执行这个。 } else { //布尔表示为flase,执行这个。 } if多选择结构 他会有多个选

m0_60996938的博客 286

if,while选择结构和while,dowhile,for循环的使用

多重if选择结构执行流程 多重if执行时候,就是先执行最外层的if,若符合条件,进入,若不符合就跳出。进入第一层if后,执行,然后又遇到if,在根据if的条件进行判断,符合就进入不符合就跳过这个if,然后依次类推,知道都执行完。

hgyz123的博客 3583

while循环里嵌套一个if_Python尚学堂高淇|P53P56while循环结构死循环选择结构的嵌套多分支选择结构双分支选择结构三元运算符的使用详解...

P53:双分支选择结构-三元运算符的使用详解双分支结构双分支结构的语法格式如下:if 条件表达式:语句1/语句块1else:语句2/语句块2【操作】输入一个数字,小于10,则打印这个数字,大于10,则打印数字太大num=input("请输入一个数字:")if int(num)<10:print(num)else:print("数字太大")三元条件运算...

weixin_39847556的博客 437

Java基础:选择结构与三种循环语法

单分子 if 选择结构: if(条件){ 操作1 } //如果满足条件就执行里面的操作 多分支 if 选择结构 : 语法 : if(条件1){ 操作1 }else if(条件2){ 操作2 }else if(条件3){ 操作3 }else{ 操作4 } 执行的步骤: 1. ...

qq_40933104的博客 296

【Python基础教程】(二):选择结构与循环结构

联系QQ:970586718 博客地址:https://blog.youkuaiyun.com/m0_46521785 选择结构 多分支结构 if (条件A): pass elif (条件B): pass elif (条件C): pass elif ...: pass else: pass 编写程序需要使用多分支的时候不要使用多个if替代,因为可能会在第一个if里改变变量的值导致进入第二个if 实现流程 执行if语句的时候,会先计算条件,判断最后的结果是True还是False,如果是True的话会.

一条小黑龙的博客 4484

Python——选择结构 和循环结构

一、选择结构 cunkuan=60 1.简单if判断 if cunkuan>100: print(“可以买宝马!”)#须缩进 print(“好开心!”) else :#后面不要跟条件 print(“还是骑自行车吧”) 2.多条件判断 cunkuan=60 if cunkuan >100: print(“买宝马”) elif cunkuan>50 :#执行完if 才执行elif,所...

ShaTaLiu_YLJ的博客 1667
上一篇: 2.if分支结构(上) ;小括号与关系运算符优先级(补)
下一篇: java入门练习题(if,switch,while循环)
like_zwj
博客等级 码龄7年 16粉丝 38原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值