Java03-程序流程控制
Java程序流程控制
- [ 任务列表 ]
- 1.选择结构(if、switch)
- 2.循环结构(for、while、do-while)
- 3.跳转关键字(break、continue、return)
- 4.其他
—————————————————————————————————————————————————————————————————————
1.选择结构(if、switch)
- if分支结构:根据条件,选择执行某段代码
if(条件表达式){
代码;
}
if(条件表达式){
代码1;
}else{
代码2;
}
if(条件表达式1){
代码1;
}else if(条件表达式2){
代码2;
}else if(条件表达式3){
代码3;
}……
else{
代码n;
}
- switch分支结构:(单值匹配)
通过比较具体值是否相等,来决定执行哪条分支
switch(表达式){
case 值1:
执行代码1;
break;
case 值2:
执行代码2;
break;
case 值3:
执行代码3;
break;
……
default:
执行代码n;
}
- if,switch各自适合什么业务场景?
if在功能上远远强大于switch;
当前条件是区间的时候,建议使用if分支;
当条件是一个个的值比较时,建议用switch更合适(性能好,格式良好,代码优美);
switch是树形结构进行查找。
2.循环结构(for、while、do-while)
循环结构:减少代码的重复编写,灵活的控制程序的执行
for循环语句:
for(初始化语句;循环条件;迭代语句){
循环体语句;
}
- while循环语句:
初始化语句;
while(循环条件){
循环体语句(被重复执行的代码);
迭代语句;
}
什么时候用for,什么时候用while?
for和while在功能上完全一样
知道循环几次使用for,不知道循环几次用while;
for循环定义的变量只在for循环内使用,while循环定义的变量在循环外也可以使用(因为while的初始化循环语句是在循环体外定义的)。do-while循环语句:
初始化语句;
do{
循环体语句;
迭代语句;
}while(循环条件);
do-while常用场景:
刷票系统:抢票系统 用的do-while循环,先不论有没有票,先抢再说死循环:
可以一直执行的循环,如果没有干预不会停下来
常用于服务器程序,一直在运行,不会停止循环的嵌套:
循环中又包括循环,外部循环每循环一次,内部循环会全部执行完一轮
3.跳转关键字(break、continue、return)
break,跳出并结束当前所在一层的循环的执行。只能用于结束所在的循环,或者结束所在的switch分支的执行。
continue,用于跳出当前循环的当次执行,直接进行循环的下一次执行,continue只能在循环中进行使用。
return,用于从方法中返回一个值并结束方法的执行。如果方法声明了返回类型,则 return 必须指定一个返回值;如果方法返回类型为 void,则可以直接使用
return;来提前结束方法。
4.其他
程序流程控制
程序流程控制指的是编程语言中用于控制程序执行顺序的机制。通过这些控制结构,可以实现条件判断、循环操作以及在特定条件下改变程序的正常执行流程等功能。Java中的流程控制语句包括:顺序、选择(分支),循环三种结构。通义灵码:怎么在IDEA中使用(电脑重新联网后通义灵码不好用的问题)
本地补全模型
云端模型自动触发随机数生成:
// 1.用方法生成一个随机数:1-100之间
/**
* Math.random():是Java中的内置功能(内置方法)
它返回一个 [0,1) 之间的随机小数。
* (int)(Math.random() * 100):是返回一个 [0,100) 之间的整数
=====> [0,100) 的整数
=====> [0,99] 的整数
* (int)(Math.random() * 100) + 1:是返回一个 [1,100] 之间的整数
*/
// int number = (int)(Math.random() * 100) + 1; // [1,100]
// System.out.println("number = " + number);
// 2.用随机变量得到一个随机数对象
Random r = new Random();
// r.nextInt(100):生成一个 [0,100) 之间的整数
// 含0,不含100,包前不包后。
int number = r.nextInt(100) + 1;
// [0,100) + 1 =======> [1,100] 之间的整数
// nextInt(n):生成0~ n-1之间的随机数,不包含n
- 随机数生成技巧:
如果要生成1-10之间;
先减一(-1) ,范围变成0-9;
然后再加一(+1),范围变成0-10;
Java03-程序流程控制的更多相关文章
- [java学习笔记]java语言基础概述之运算符&程序流程控制&for循环嵌套
一.运算符 算数运算符 +,-,*,/,%,++,-- 1.+,-,*,/ 整数除以整数的结果为舍弃了小数部分的整数. 2.%:取余 %左右都为正数,左边小于右边结果为左边值,如,4%5=4 %左边大 ...
- Java 基础 程序流程控制 (下)
Java 程序流程控制 (下) 此篇单独对循环结构的知识点进行整理: 之前讲到循环结构分为:for循环,while循环,do...while循环三种最基本的循环结构:在JDK1.5以后的版本还提供了f ...
- Java 基础 程序流程控制 (上)
Java程序流程控制 (上) Java程序大体分为三种流程控制结构:顺序结构.分支结构.循环结构 顺序结构 程序由上到下的逐行执行,中间没有任何跳转和判断语句. 示例代码如下: public clas ...
- Java基础之程序流程控制
Java中的程序流程控制 Java中的程序流程分为三种结构:①顺序结构:②分支结构:③循环结构 一.顺序结构 Java中定义成员变量的时候,采用的是前向引用,也就是后面的变量可以引用之前定义好的变量. ...
- 4. Scala程序流程控制
4.1 程序流程控制说明 在程序中,程序运行的流程控制决定程序是如何执行的,是我们必须掌握的,主要有三大流程控制语句,顺序控制,粉质控制,循环控制 温馨提示:Scala语言中控制结构和Java语言中的 ...
- Java基础-程序流程控制第二弹(循环结构)
Java基础-程序流程控制第二弹(循环结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 流程控制有三种基本结构:顺序结构,选择结构和循环结构.一个脚本就是顺序结构执行的,选择结 ...
- Java基础-程序流程控制第一弹(分支结构/选择结构)
Java基础-程序流程控制第一弹(分支结构/选择结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.if语句 1>.if语句的第一种格式 if(条件表达式){ 语句体: ...
- Java 基础入门随笔(4) JavaSE版——程序流程控制
上一节对于运算符有了大致的了解,这一节针对程序流程控制进行复习!程序流程控制包括顺序结构.判断结构(if).选择结构(switch).循环结构. 1.判断结构 ①if语句的第一种格式: ...
- Java程序流程控制
程序流程控制有 选择,循环,以及跳转结构 选择结构中无非就是 If 和 switch语句我两种都做了一些小案例 1. 利用Scanner库来获得控制台用户输入的数字与代码中定义的变量比较 packag ...
- Java基本语法--程序流程控制
流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块.流程控制方式采用结构化程序设计中规定的三种基本流程结构,即:顺序结构.分支结构.循环结构.本篇博客主要是对 ...
随机推荐
- k8s之常用命令
Minikube # 启动集群服务 minikube start # 查看集群服务状态 minikube status# 登录集群minikube ssh # 关闭,暂停,恢复,删除集群服务 mini ...
- Golang之学习资源参考
使用golang开发也有一段时间,在此总结一些自己从0入门到掌握所涉及一些资源,希望可以帮助其他人 [初级] 基础语法练习: https://gobyexample.com/ [中级] 1.gola ...
- Beautiful of programming
作者:Linus Torvalds 我不知道该如何清楚地描述我对编程的痴迷.对编程的人来说,这是世界上最有趣的事情.这是一个比国际象棋更复杂的游戏,在这个游戏中,你可以制定自己的规则,并基于这些规则得 ...
- Redis应用—1.在用户数据里的应用
大纲 1.社区电商的业务闭环 2.Redis缓存架构的典型生产问题 3.用户数据在读多写少场景下的缓存设计 4.热门用户数据的缓存自动延期机制 5.缓存惊群与穿透问题的解决方案 6.缓存和数据库双写不 ...
- FineReport模板性能问题排查方法
1. 概述 模板的加载速度受到很多因素影响,如果一个模板预览的时候,加载较慢,该如何去分析问题原因呢? 2. 排查步骤 2.1 查看数据集查询速度 大部分模板加载慢,都是因为 sql 执行速度比较慢. ...
- 在分布式追踪系统中使用 W3C Trace Context
在分布式追踪系统中使用 W3C Trace Context https://dev.to/luizhlelis/using-w3c-trace-context-standard-in-distribu ...
- Nuget Reference 丢失问题
现象 在 Visual Studio 2017 中创建一个控制台项目.创建出来的项目如下所示. 通过 NuGet 管理器,添加 Newtonsoft.Json 的 NuGet 包,安装之后,项目中添加 ...
- Mapstruct使用时报Unknown property xxx in result type xxx. Did you mean null
0.背景 使用mapstruct时出现: Unknown property "xxx" in result type xxx. Did you mean "null&qu ...
- H2数据UNIX_TIMESTAMP兼容问题
开篇 今天某同事在spring结合H2实现mybatis DAO层单测的时候遇到一个问题,本着人道主义临时支持下我司大xx业务,就帮忙一起看了下,回想一下整个过程还是挺有意思的,就顺便写了这篇文章来 ...
- Python的OCR工具pytesseract解决TesseractNotFoundError: tesseract is not installed or it's not in your PATH. See README file for more information环境变量问题
pytesseract是基于Python的OCR工具, 底层使用的是Google的Tesseract-OCR 引擎,支持识别图片中的文字,支持jpeg, png, gif, bmp, tiff等图片格 ...