循环结构
循环结构
- 循环结构
- 一、课前问答
- 二、while循环
- 三、do-while循环
- 四、for循环
- 五、流程控制
- 5.1 break
- 5.2 continue
循环结构
一、课前问答
1、switch支持的数据类型。
2、switch中break的作用。
3、多重if如果多个条件都成立,执行方式。
二、while循环
语法:
while(布尔条件){
// 代码块1
}
执行流程:
先判断布尔条件,如果成立,则执行代码块1,然后再判断条件,成立再执行代码块1,直到条件不成立才结束。
public class Demo01 {// while循环public static void main(String[] args) {int n = 0; // 初始化变量,只执行一次while(n < 100) { // 判断条件System.out.println("hello, world" + n); // 执行的内容n++; // 条件的变化}System.out.println("程序结束");}
}
public class Demo02 {// while循环,求1~100的和public static void main(String[] args) {int n = 1; // 初始化变量,只执行一次int sum = 0; // 计算和值 while(n <= 100) { // 判断条件sum = sum + n; // sum += n;n++; // 条件的变化}System.out.println("和值为:" + sum);}
}
public class Demo03 {// while循环,求1~100所有偶数的和public static void main(String[] args) {int n = 1; // 初始化变量,只执行一次int sum = 0; // 计算和值 while(n <= 100) { // 判断条件if(n % 2 == 0) {sum = sum + n; // sum += n;}n++; // 条件的变化}System.out.println("和值为:" + sum);}
}
public class Demo04 {// 求1~100以内所有与7相关的数字之和public static void main(String[] args) {int n = 1; // 初始化变量,只执行一次int sum = 0; // 计算和值 while(n <= 100) { // 判断条件if(n % 7 == 0 || n % 10 == 7 || n / 10 == 7) { // 与7相关,7,14,21,17,27,37,70,71,72sum = sum + n; // sum += n;}n++; // 条件的变化}System.out.println("和值为:" + sum);}
}
public class Demo05 {// 求所有的3位水仙花数public static void main(String[] args) {int n = 100;while(n < 1000) {int g = n % 10;int s = n / 10 % 10;int b = n / 100;if(n == g * g * g + s * s * s + b * b * b) {System.out.println(n + "水仙花数");}n++;}}
}
三、do-while循环
语法:
do{
// 代码块
}while(条件);
执行流程:
先执行一次代码块,再判断条件,如果条件成立,再次执行代码块,再次判断条件,直到条件不成立为止。
注意:
while与do-while的区别:
while循环先判断条件,执行代码块的次数是0次到多次。
do-while循环先执行一次,再判断条件,执行代码块的次数是1次到多次。
public class Demo06 {// 根据评语判断是否抄写代码public static void main(String[] args) {Scanner input = new Scanner(System.in);String s;do {System.out.println("抄写一遍代码");System.out.println("请老师输入评语:");s = input.next();}while(!s.equals("y"));}
}
public class Demo07 {// 猜数字public static void main(String[] args) {Random random = new Random();int number = random.nextInt(10) + 1; // 生成1~10的随机数Scanner input = new Scanner(System.in);int n;do {System.out.println("请猜一个数字:");n = input.nextInt();// 比较大小,并提示用户// 计次数字++}while(number != n);System.out.println("恭喜你猜对了");}
}
四、for循环
语法:
for(int i = 0; i < 10; i++){
// 代码块
}
执行流程:
- 先执行初始化部分,即int i = 0; 只执行一次。
- 判断条件,i < 10; 如果条件成立,则执行代码块,条件不成立则循环结束
- 代码块执行完毕后,执行迭代部分,即i++,执行完毕后,继续判断条件,直到条件不成立。
public class Demo08 {// for循环public static void main(String[] args) {for(int n = 0; n < 100; n++) {System.out.println("hello, world" + n); // 执行的内容}System.out.println("程序结束");}
}
五、流程控制
5.1 break
在一层循环中使用,作用是停止循环。
public class Demo2 {// 找到最小的3位7的倍数public static void main(String[] args) {for (int i = 100; i < 1000; i++) {if(i % 7 == 0) {System.out.println(i);break;}}}
}
public class Homework1 {// 定义两个int类型数字,求最大公约数。public static void main(String[] args) {int num1 = 32000;int num2 = 260;for (int i = num1; i > 0 ; i--) {if(num1 % i == 0 && num2 % i == 0) {System.out.println("最大公约数为:" + i);break;}}}
}
public class Homework2 {// 定义两个int类型数字,求最小公倍数。public static void main(String[] args) {int num1 = 6;int num2 = 10;for (int i = 1;; i++) {if(i % num1 == 0 && i % num2 == 0) {System.out.println("最小公倍数为:" + i);break;}}}
}
注意:循环中止使用break只能停止一层循环,并不能停止嵌套循环。
5.2 continue
在循环中,如果执行continue,意味着当次循环在continue后面的代码不执行,继续执行下一次循环。
注意:如果在循环中continue后面没有代码,意味着continue没有意义。
public class Demo3 {// continue循环public static void main(String[] args) {for (int i = 0; i < 10; i++) {if(i == 5) {continue;}System.out.println("hello");System.out.println("world");System.out.println("11111");System.out.println(i);}}
}
相关文章:
循环结构
循环结构循环结构一、课前问答二、while循环三、do-while循环四、for循环五、流程控制5.1 break5.2 continue循环结构 一、课前问答 1、switch支持的数据类型。 2、switch中break的作用。 3、多重if如果多个条件都成立,执行方式。 二、while循环 语法: …...
漫谈数据库表设计及索引设计
一.数据库表设计 在数据库表设计上有个很重要的设计准则,称为范式设计。 什么是范式设计? 范式来自英文Normal Form,简称NF。MySQL是关系型数据库,但是要想设计—个好的关系,必须使关系满足一定的约束条件,…...
【JavaWeb】CSS基础知识:引入方式 + 选择器
CSS引入 CSS的引入有三种,三种的优缺点各不相同。 行内样式表 <!-- 行内样式表 --><!-- 相当于标签的一个属性 --><!-- 只对当前标签生效 --><!-- 优先级较高,会覆盖其他样式 --><p style"color: blue;">这是…...
02-前端-javaScript
文章目录JavaScript1,JavaScript简介2,JavaScript引入方式2.1 内部脚本2.2 外部脚本3,JavaScript基础语法3.1 书写语法3.2 输出语句3.3 变量3.3.1 全局变量var3.3.2 局部变量let3.3.3 常量const3.4 数据类型3.5 运算符3.5.1 \和区别 ▲3.5.2 …...
对链表学习的总结一
一,单链表结构定义 C/C++ 数组:一组具有相同类型数据的集合。结构体:不同类型数据的集合。 // Definition for singly-linked list. struct ListNode {int val;ListNode *next;ListNode(int x) : val(x), next...
toSring()还有个高级用法好用
Object.prototype.toString()能够很好的判断数据的类型及内置对象 typeof xxx:能判断出number,string,undefined,boolean,object,function(null是object)Object.prototype.toString.call(xxx):能判断出大部分类型Array.isArray(xxx):判断是否为数组var test= Object.…...
Linux--多线程(3)
目录1. POSIX信号量1.1 概念2. 基于环形队列的生产消费者模型2.1 环形队列的基本原理2.2 基本实现思想3. 多生产多消费1. POSIX信号量 1.1 概念 信号量本质是一个计数器,申请了信号量以后,可以达到预定临界资源的效果。 POSIX信号量和SystemV信号量相同…...
【spring】事务
概述 1、什么事务 事务是数据库操作最基本单元,逻辑上一组操作,要么都成功,如果有一个失败所有操 作都失败 2、事务四个特性(ACID) (1)原子性 (2)一致性 (3…...
博通仍然是美股市场最好的芯片半导体股
来源:猛兽财经 作者:猛兽财经 博通(AVGO)是一家快速增长的半导体公司,并且有很高的股息分红,目前其股息收益率已经高出了平均水平3.2%,而且估值非常合理,仅为预期净利润的14倍。 虽然博通也受到了经济衰退影…...
java开发手册之异常日志
文章目录异常日志异常处理日志规约异常日志 异常处理 1.Java 类库中定义的一类 RuntimeException可以通过预先检查进行规避,而不应该通过 catch 来处理 比如:IndexOutOfBoundsException,NullPointerException 等等。 说明:无法通…...
P6专题:关于P6 EPPM和PPM的区别及选型
目录 引言 什么是 Primavera P6 项目管理? Primavera P6 PPM 关键点 Primavera P6 PPM 是独立工具还是企业工具? 什么是 Primavera P6 企业项目组合管理? 那么EPPM的windows-tool呢? P6 EPPM 适合谁? 更多对比…...
亿万级海量数据去重软方法
文章目录原理案例一需求:方法案例二需求:方法:参考原理 在大数据分布式计算框架生态下,提升计算效率的方法是尽可能的把计算分布式话、并行化,避免单节点计算过载,把计算分摊到各个节点。这样解释小白能够…...
记录--手摸手带你撸一个拖拽效果
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前言 最近看见一个拖拽效果的视频(抖音:艾恩小灰灰),看好多人评论说跟着敲也没效果,还有就是作者也不回复大家提出的一些疑问,本着知其然必要知其所以然…...
python高德地图+58租房网站平台源码
wx供重浩:创享日记 对话框发送:python地图 免费获取完整源码源文件说明文档配置教程等 在PyCharm中运行《高德地图58租房》即可进入如图1所示的高德地图网页。 具体的操作步骤如下: (1)打开地图网页后,在编…...
ubuntu 将jupyter-lab保存为桌面快捷方式和favourites
ubuntu: 将jupyter-lab保存为桌面快捷方式和favourites desktop shortcut 建立一个新的desktop文件 cd ~/Desktop touch Jupyter-lab.desktop将文件修改成如下: [Desktop Entry] Version1.0 NameJupyterlab CommentBack up your data with one click Exec/home/cjb/…...
Java 类和对象简介
类是对象的抽象,是一组具有相同特性(属性,事物的状态信息)和行为(事物能做什么)的事物的集合,可以看做一类事物的模板。 对象是类的实例化,是具体的事物。 比如:人类和…...
时间复杂度的计算
个人主页:平行线也会相交 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 平行线也会相交 原创 收录于专栏【数据结构初阶(C实现)】 文章目录123456789时间复杂度(就是一个函数)的计算,…...
站内信箱系统的设计与实现
技术:Java、JSP等摘要:在经济全球化和信息技术成为发展迅速的今时今日,人们通过电子邮件收发进行信息传递已经成为主流。随着互联网和网络办公的发展,电子邮件正在被广泛应用在人们的日常生活中。跟据调查研究统计,在全…...
systemV共享内存
systemV共享内存 共享内存区是最快的IPC形式。共享内存的大小一般是4KB的整数倍,因为系统分配共享内存是以4KB为单位的(Page)!4KB也是划分内存块的基本单位。 之前学的管道,是通过文件系统来实现让不同的进程看到同一…...
Python基础之if逻辑判断
在学习if语句之前,我们先学习一种数据类型,布尔类型(bool),在if语句中,我们需要通过判断条件是否为真或者假,才进入下面的语句块执行。 一、布尔类型(bool) 布尔类型&a…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...
Robots.txt 文件
什么是robots.txt? robots.txt 是一个位于网站根目录下的文本文件(如:https://example.com/robots.txt),它用于指导网络爬虫(如搜索引擎的蜘蛛程序)如何抓取该网站的内容。这个文件遵循 Robots…...
智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...
ABAP设计模式之---“简单设计原则(Simple Design)”
“Simple Design”(简单设计)是软件开发中的一个重要理念,倡导以最简单的方式实现软件功能,以确保代码清晰易懂、易维护,并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计,遵循“让事情保…...
Webpack性能优化:构建速度与体积优化策略
一、构建速度优化 1、升级Webpack和Node.js 优化效果:Webpack 4比Webpack 3构建时间降低60%-98%。原因: V8引擎优化(for of替代forEach、Map/Set替代Object)。默认使用更快的md4哈希算法。AST直接从Loa…...
嵌入式常见 CPU 架构
架构类型架构厂商芯片厂商典型芯片特点与应用场景PICRISC (8/16 位)MicrochipMicrochipPIC16F877A、PIC18F4550简化指令集,单周期执行;低功耗、CIP 独立外设;用于家电、小电机控制、安防面板等嵌入式场景8051CISC (8 位)Intel(原始…...
学习一下用鸿蒙DevEco Studio HarmonyOS5实现百度地图
在鸿蒙(HarmonyOS5)中集成百度地图,可以通过以下步骤和技术方案实现。结合鸿蒙的分布式能力和百度地图的API,可以构建跨设备的定位、导航和地图展示功能。 1. 鸿蒙环境准备 开发工具:下载安装 De…...
第一篇:Liunx环境下搭建PaddlePaddle 3.0基础环境(Liunx Centos8.5安装Python3.10+pip3.10)
第一篇:Liunx环境下搭建PaddlePaddle 3.0基础环境(Liunx Centos8.5安装Python3.10pip3.10) 一:前言二:安装编译依赖二:安装Python3.10三:安装PIP3.10四:安装Paddlepaddle基础框架4.1…...
WEB3全栈开发——面试专业技能点P7前端与链上集成
一、Next.js技术栈 ✅ 概念介绍 Next.js 是一个基于 React 的 服务端渲染(SSR)与静态网站生成(SSG) 框架,由 Vercel 开发。它简化了构建生产级 React 应用的过程,并内置了很多特性: ✅ 文件系…...
算术操作符与类型转换:从基础到精通
目录 前言:从基础到实践——探索运算符与类型转换的奥秘 算术操作符超级详解 算术操作符:、-、*、/、% 赋值操作符:和复合赋值 单⽬操作符:、--、、- 前言:从基础到实践——探索运算符与类型转换的奥秘 在先前的文…...
