Java程序流程控制

—————————————————————————————————————————————————————————————————————

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-程序流程控制的更多相关文章

  1. [java学习笔记]java语言基础概述之运算符&程序流程控制&for循环嵌套

    一.运算符 算数运算符 +,-,*,/,%,++,-- 1.+,-,*,/ 整数除以整数的结果为舍弃了小数部分的整数. 2.%:取余 %左右都为正数,左边小于右边结果为左边值,如,4%5=4 %左边大 ...

  2. Java 基础 程序流程控制 (下)

    Java 程序流程控制 (下) 此篇单独对循环结构的知识点进行整理: 之前讲到循环结构分为:for循环,while循环,do...while循环三种最基本的循环结构:在JDK1.5以后的版本还提供了f ...

  3. Java 基础 程序流程控制 (上)

    Java程序流程控制 (上) Java程序大体分为三种流程控制结构:顺序结构.分支结构.循环结构 顺序结构 程序由上到下的逐行执行,中间没有任何跳转和判断语句. 示例代码如下: public clas ...

  4. Java基础之程序流程控制

    Java中的程序流程控制 Java中的程序流程分为三种结构:①顺序结构:②分支结构:③循环结构 一.顺序结构 Java中定义成员变量的时候,采用的是前向引用,也就是后面的变量可以引用之前定义好的变量. ...

  5. 4. Scala程序流程控制

    4.1 程序流程控制说明 在程序中,程序运行的流程控制决定程序是如何执行的,是我们必须掌握的,主要有三大流程控制语句,顺序控制,粉质控制,循环控制 温馨提示:Scala语言中控制结构和Java语言中的 ...

  6. Java基础-程序流程控制第二弹(循环结构)

    Java基础-程序流程控制第二弹(循环结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 流程控制有三种基本结构:顺序结构,选择结构和循环结构.一个脚本就是顺序结构执行的,选择结 ...

  7. Java基础-程序流程控制第一弹(分支结构/选择结构)

    Java基础-程序流程控制第一弹(分支结构/选择结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.if语句 1>.if语句的第一种格式 if(条件表达式){ 语句体: ...

  8. Java 基础入门随笔(4) JavaSE版——程序流程控制

    上一节对于运算符有了大致的了解,这一节针对程序流程控制进行复习!程序流程控制包括顺序结构.判断结构(if).选择结构(switch).循环结构. 1.判断结构 ①if语句的第一种格式:        ...

  9. Java程序流程控制

    程序流程控制有 选择,循环,以及跳转结构 选择结构中无非就是 If 和 switch语句我两种都做了一些小案例 1. 利用Scanner库来获得控制台用户输入的数字与代码中定义的变量比较 packag ...

  10. Java基本语法--程序流程控制

    流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块.流程控制方式采用结构化程序设计中规定的三种基本流程结构,即:顺序结构.分支结构.循环结构.本篇博客主要是对 ...

随机推荐

  1. Node.js 模拟Apache服务器

    1.知识必备 (1)当服务器响应不同文件类型时,需要设置响应报文头,让浏览器选择相应的编码解析数据. 常用对照表HTTP Mime-type: https://tool.oschina.net/com ...

  2. 0. RyuJIT Tutorials - RyuJIT 的历史和架构

    目录 上一篇:无 下一篇:待更新 正文 RyuJIT - 即 .NET 的 JIT 编译器,负责将 IL 代码编译为最终用于执行的机器代码. 本系列为 RyuJIT 教程,将分为多篇进行更新发布,旨在 ...

  3. 《前端运维》五、k8s--2pod、services与Ingress部署

    前一篇啊,我们学完了基本的配置.这一篇,我们来看下服务部署的配置.我们先来看张图,理解下k8s的应用场景和调用流程: 看上图,首先,master是控制节点,负责编排.管理.调度用户提交的作业.kube ...

  4. Fiddler对手机APP进行抓包

    1.下载安装Fiddler 2.打开Fiddler菜单项Tools-> Options->HTTPS 勾选CaptureHTTPS CONNECTs,点击Actions, 勾选Decryp ...

  5. 史上最牛X的微信公众号!

    今天给大家推荐一个最牛逼的微信公众号,专注分享技术干货,包括但不限于Java,HTML,JavaScript,MySQL,Redis,Windows,Linux,Spring,SpringBoot,V ...

  6. Spring Cloud Sleuth in a Monolith Application

    1. Overview   In this article, we're introducing Spring Cloud Sleuth – a powerful tool for enhancing ...

  7. Python__FLASK__MySQL基础

    1.数据库的基本操作 创建数据库:使用"CREATE DATABASE 数据库名:"语句创建新的数据库 查看数据库:使用"SHOW DATABASES:"语句查 ...

  8. Qt加载天地图离线api开发包/从官网趴地图js代码/费了九牛二虎之力终于搞定

    一.前言说明 网上关于如何趴天地图离线api文件的文章,只有少量的两三篇,而且几乎没有说全和说对,搞得评论也是一片懵逼,这里不行那你不行,思路可以借鉴就是.索性花了点时间,自己研究了如何从官网一步步趴 ...

  9. Qt编写可视化大屏电子看板系统23-模块1产量汇总

    一.前言 大屏系统采用结构模块化的分层设计思路,一个表对应一个最小模块比如模具产量.零件产量,数据库采集的时候采集对应的表,拿到数据后按照对应的数据规则传给控件绘制,其中模具产量.零件产量两个模块采用 ...

  10. Qt6中重大改变的QtMultimedia多媒体模块

    一.前言 Qt 6.2 的第一个测试版刚刚发布,并在多个其他新附加组件中加入了全新的 Qt 多媒体模块.Qt Multimedia 是一个模块,它在 Qt 6 中发生了一些相当大的变化. 在很多方面, ...