【JavaSE】-4-单层循环结构
回顾
运算符:
算术 ++ --、逻辑 && & || |、比较 ==、三元 、赋值 =
int i = 1;
i++;
j = i++; //j=2 i=3
syso(--j+"-----"+i++) //1 3
选择结构
if(){}
if(){}else{}
if(){}else if(){}else if(){}else{}
//支持byte、short、int
//支持char
//支持枚举
//从jdk8开始 支持String字符串类型
switch(表达式){}
循环结构
循环目的:实现某一块代码多次重复执行。
for循环
for(表达式一;表达式二;表达式三){//循环体
}

示例:
/** 需求:在控制台打印出所有的水仙花数。* 水仙花数: 是一个三位数,* 水仙花数的个位、十位、百位数字的立方之和等于原数。*/for(int i=100;i<1000;i++) {int g = i%10; int b = i/100;//121int s = i/10%10;if(g*g*g + b*b*b + s*s*s == i) {System.out.print(i+" ");} }
/** 1. 需求:数7游戏。从1到100(不含100), * 如果数是7的倍数或者包含7输出“过”,否则输出数字本身。*/for(int i=1;i<100;i++) { //65//7的倍数 i%7==0//包含7 个位i%10==7 十位i/10==7if(i%7==0 || i%10==7 || i/10==7) {System.out.print("过 ");}else {System.out.print(i+" ");}}
for循环变形及死循环
for(表达式1;表达式2;表达式3){循环体
}
代码:
public static void main(String[] args) {for( ; ; ) {System.out.println("hello world");}System.out.println("end");//这行代码永远执行不到}
上面的示例,没有任何语句控制循环的结束。所以会无限打印hello world,导致循环后面的代码永远执行不到。
注意:如果程序中出现死循环,Eclipse会报错,不允许你执行。
代码:
public static void main(String[] args) {for(int i = 0 ; i != 10 ; i += 3 ) {System.out.println("hello world");}System.out.println("end");//这行代码永远执行不到}
上面的示例,虽然表达式完整,但是 i != 10会永远为真,因此也是一个死循环。导致for循环后面的代码无法执行
代码:
// int i ;
// for(i=1;;) {
//
// }// int i = 1;
// for(;;) {
// System.out.println(i);
// }// for(int i = 1;i < 10;i--) {
// System.out.println(i);
// }
int i = 1;for(;i < 10;) { //不会发生死循环System.out.println(i++);}
while循环
do…while循环
Random随机数
random.nextInt(3); // 得到的是一个 [0,3)的数值
随机数的规律:要想产生一个[min, max]之间的随机数。
int num = random.nextInt(max - min + 1) + min;
随机数的规律:要想产生一个[min, max) 之间的随机数。
int num = random.nextInt(max - min) + min;
随机数范围
[0,10]
[0,10)
[10,15]
(10,15]
Random r = new Random();//生成boolean类型随机数boolean flag = r.nextBoolean();//生成int范围的随机数int num1 = r.nextInt();//生成double类型的随机数double d1 = r.nextDouble();//指定范围 0<=num<3int num2 = r.nextInt(3);//[0,3)//生成一个随机数 0<=num<=3int num3 = r.nextInt(4);//生成一个随机数 5<=num<10 //5 [0-5)//r.nextInt(10-5)+5 r.nextInt(max-min)+minint num5 = r.nextInt(5)+5;//生成一个[15-20)之间的随机数
// for(int i=0;i<10;i++) {
// int num6 = r.nextInt(20-15)+15;
// System.out.println(num6);
// }//生成一个[15-20]之间的随机数 r.nextInt(max-min+1)+minfor(int i=0;i<10;i++) {System.out.print(r.nextInt(20-15+1)+15+" ");}
示例:
//产生5个[10, 80]之间的随机数,输出产生的数,并求出最大的随机数。
//记录最大值出现的下标(第一次循环 ,下标为0,第二次为1....)
Random r = new Random();
//最大值出现的索引下标
int maxIndex = 0;
int max = 0;
int min = 80;
int sum = 0;
for(int i=0;i<5;i++) {int num = r.nextInt(71)+10;System.out.print(num+" ");maxIndex = (num>max) ? i : maxIndex;max = num>max ? num : max;min = num<min ? num : min;sum += num;
}
System.out.println("最大值是:"+max +" 最小值是:"+min +" 总和:"+sum);
System.out.println("最大值的索引下标是:"+maxIndex);相关文章:
【JavaSE】-4-单层循环结构
回顾 运算符: 算术 --、逻辑 && & || |、比较 、三元 、赋值 int i 1; i; j i; //j2 i3 syso(--j"-----"i) //1 3 选择结构 if(){} if(){}else{} if(){}else if(){}else if(){}else{}//支持byte、short、int //支持char //支持枚举…...
12、人工智能、机器学习、深度学习的关系
很多年前听一个机器学习的公开课,在Q&A环节,一个同学问了老师一个问题“机器学习和深度学习是什么关系”? 老师先没回答,而是反问了在场的同学,结果问了2-3个,没有人可以回答的很到位,我当时也是初学一脸懵,会场准备的小礼品也没有拿到。 后来老师解释“机器学习和…...
webpack external 详解
作用:打包时将依赖独立出来,在运行时(runtime)再从外部获取这些扩展依赖,目的时解决打包文件过大的问题。 使用方法: 附上代码块 config.set(externals, {vue: Vue,vue-router: VueRouter,axios: axios,an…...
代码混淆不再愁:一篇掌握核心技巧
1. 概述 代码混淆是将计算机程序的代码转换成一种功能上等价,但是难以阅读和理解的形式。 对于软件开发者来说,代码混淆可以在一定程度上保护程序免被逆向。 对于逆向工程师来说,学习代码混淆可以帮助我们研究反混淆技术。 2. 常见混淆…...
华为云IoT与OpenHarmony深度协同,加速设备上鸿即上云【云驻共创】
本次专题论坛探讨了华为云IoT与Open Harmony的深度协同、边缘屏蔽硬件差异、实现智慧隧道全方位智能化管理,以及华为云与Open Harmony生态的合作。同时也介绍了华为云物联网卡平台、HTTP2协议以及华为物联网在交通领域的应用。 一.华为云IoT与Open Harm…...
深入浅出 Linux 中的 ARM IOMMU SMMU I
Linux 系统下的 SMMU 介绍 在计算机系统架构中,与传统的用于 CPU 访问内存的管理的 MMU 类似,IOMMU (Input Output Memory Management Unit) 将来自系统 I/O 设备的 DMA 请求传递到系统互连之前,它会先转换请求的地址,并对系统 I…...
关于sqlModel 实现查询表单入参空值和模糊匹配一次性查询
在处理表单提交后,后端 SQL 查询部分空值和部分模糊值时,可以使用 SQLModel 构建动态查询。你可以根据表单数据动态构建 SQL 查询,并且只添加那些非空的、有值的条件。 以下是一个示例,假设你有一个模型 Item: from …...
数据仓库架构之详解Kappa和Lambda
目录 一、前言 二、架构详解 1 Lambda 架构 1.1 Lambda 架构组成 1.2 Lambda 特点 1.3 Lambda 架构的优点 1.4 Lambda 架构的不足 2 Kappa 架构 2.1 Kappa 架构的核心组件 2.2 Kappa 架构优点 2.3 Kappa 架构的注意事项 三、区别对比 四、选择时考虑因素 一、前言 …...
Banana Pi BPI-R3 Mini 开源路由器,也能拍出艺术美感
香蕉派BPI-R3 Mini路由器板开发板采用联发科MT7986A(Filogic 830)四核ARM A53芯片设计,板载2G DDR 内存,8G eMMC和128MB SPI NAND存储,是一款非常高性能的开源路由器开发板,支持Wi-Fi6 2.4G/5G(MT7976C)&am…...
Django高级之-分页器
目录 一、引入 二、分页推导 三、数据总页面获取 四、内置方法之divmod 五、终极大法 六、自定义分页器使用 【1】后端 【2】前端 一、引入 针对上一小节批量插入的数据 我们在前端展示的时候发现一个很严重的问题一页展示了所有的数据,数据量太大…...
Vue-报错No “exports“ main defined in xx
vue报错:No "exports" main defined in F:\wjh\vue#Practice\EasyQuestionnaire-web-master\EasyQuestionnaire-web-master\node_modules\babel\helper-compilation-targets\package.json 1.在文件中找到该路径的package.json文件, 2.按照提示…...
EL-input添加双击或者单击事件
#El-lement UI # 这个框架确实给我们带来了很多好处,最近一直忙于项目,没时间来写文章,最近有个问题困扰我很久,最终却很简单的解决了,记下来希望能帮助更多的人。 大家都知道el-input是无法直接添加click或者dblcli…...
OpenCV快速入门:绘制图形、图像金字塔和感兴趣区域
文章目录 前言一、绘制图形1. 绘制直线2. 绘制圆3. 绘制矩形4. 绘制椭圆5. 绘制多边形6. 绘制文字7. 可选参数8. 手工绘制OpenCV的logo 二、图像金字塔1. 高斯金字塔2. 拉普拉斯金字塔 三、感兴趣区域(ROI)数组切片方式OpenCV截取方式 总结 前言 OpenCV…...
Three.js相机模拟
有没有想过如何在 3D Web 应用程序中模拟物理相机? 在这篇博文中,我将向你展示如何使用 Three.js和 OpenCV 来完成此操作。 我们将从模拟针孔相机模型开始,然后添加真实的镜头畸变。 具体来说,我们将仔细研究 OpenCV 的两个失真模型,并使用后处理着色器复制它们。 拥有逼…...
Verilog基础:仿真时x信号的产生和x信号对于各运算符的特性
相关阅读 Verilog基础https://blog.csdn.net/weixin_45791458/category_12263729.html?spm1001.2014.3001.5482 信号爆x也许是所有IC人的噩梦,满屏的红色波形常让人头疼不已,但x信号的产生原因却常常只有几种,只要遵循一定的代码规范&#…...
穿越数据的迷宫-数据管理知识介绍
一、权威书籍介绍 《穿越数据的迷宫》 本书分12章重点阐述了数据管理的重要性,数据管理的挑战,DAMA的数据管理原则,数据伦理,数据治理,数据生命周期管理的规划和设计,数据赋能和数据维护,使用…...
3
目录 【任务 3】私有云运维开发[10 分] 【题目 1】Ansible 服务部署:部署 MariaDB 集群[2 分] 【题目 2】Ansible 服务部署:部署ELK 集群服务[2 分] 【题目 3】Python 运维开发:基于OpenStack Restful API 实现镜像上传[1 分] 【题目 4】Pyth…...
【python学习】基础篇-常用模块-multiprocessing模块:多进程
multiprocessing模块是Python标准库中用于实现多进程的模块,它提供了一些工具和类来创建和管理多个进程。 以下是multiprocessing模块的一些常用方法: Process()创建一个新的进程对象,需要传入一个函数作为该进程要执行的任务。 start()启动…...
JAVA SQL
-- /* */ -- 简单查询: -- 查询所有字段: select * from 表名 -- *:通配符,代表所有 select * from employees -- 查询部分字段: select 列名1,列名2,.. from 表名 -- 查询员工ID,员工姓名,员工的工资 select employee_id,salary,first_name from employees -- 查…...
[Linux] 进程入门
💻文章目录 📄前言计算机的结构体系与概念冯诺依曼体系结构操作系统概念目的与定位 进程概念描述进程-PCBtask_struct检查进程利用fork创建子进程 进程状态进程状态查看僵尸进程孤儿进程 📓总结 📄前言 作为一名程序员,…...
3步解锁游戏修改神器:WandEnhancer完整使用指南
3步解锁游戏修改神器:WandEnhancer完整使用指南 【免费下载链接】Wand-Enhancer Advanced UX and interoperability extension for Wand (WeMod) app 项目地址: https://gitcode.com/gh_mirrors/we/Wand-Enhancer 还在为游戏修改工具的高级功能付费而烦恼吗&…...
联合GNSS与InSAR监测的矿区开采地表残余下沉预测模型APP开发【附代码】
✨ 本团队擅长数据搜集与处理、建模仿真、程序设计、仿真代码、EI、SCI写作与指导,毕业论文、期刊论文经验交流。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,查看文章底部二维码(1)GNSS与InSAR数据融合的残余下沉提取算法࿱…...
如何轻松批量下载B站视频?BilibiliDown终极指南免费开源
如何轻松批量下载B站视频?BilibiliDown终极指南免费开源 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/gh_mirrors…...
Loki介绍(Grafana Labs轻量级日志聚合系统,不索引日志内容,只索引元数据labels)LogQL查询语言、日志监控、日志系统、ELK、Promtail、Query Frontend
文章目录Loki 入门与架构解析:云原生日志系统的最佳实践一、什么是 Loki?二、Loki 的核心特点1. 低成本存储2. 与 Prometheus 生态无缝集成3. 原生支持云原生4. 高扩展性三、Loki 架构详解1. Distributor(分发器)2. Ingester&…...
别再到处找了!8个开源工业以太网协议栈(EtherCAT/Profinet/Modbus)项目地址与上手建议
工业以太网开源协议栈实战指南:8个精选项目深度解析 第一次接触工业以太网协议栈时,我盯着满屏的GitHub仓库链接发愣——每个项目都声称自己是最佳选择,但究竟哪个适合我的STM32H7项目?这个问题困扰了我整整两周。直到在三个不同项…...
TranslucentTB完整指南:3步轻松打造个性化Windows任务栏
TranslucentTB完整指南:3步轻松打造个性化Windows任务栏 【免费下载链接】TranslucentTB A lightweight utility that makes the Windows taskbar translucent/transparent. 项目地址: https://gitcode.com/gh_mirrors/tr/TranslucentTB 想让你的Windows桌面…...
中兴光猫破解终极指南:使用zteOnu工具轻松获取工厂模式权限
中兴光猫破解终极指南:使用zteOnu工具轻松获取工厂模式权限 【免费下载链接】zteOnu A tool that can open ZTE onu device factory mode 项目地址: https://gitcode.com/gh_mirrors/zt/zteOnu 在当今网络环境中,中兴光猫作为广泛部署的家庭网关设…...
如何让AI成为你的私人中医顾问?仲景大语言模型深度解析
如何让AI成为你的私人中医顾问?仲景大语言模型深度解析 【免费下载链接】CMLM-ZhongJing 首个中医大语言模型——“仲景”。受古代中医学巨匠张仲景深邃智慧启迪,专为传统中医领域打造的预训练大语言模型。 The first-ever Traditional Chinese Medicine…...
如何用学之思开源考试系统解决企业培训与学校考试数字化转型难题
如何用学之思开源考试系统解决企业培训与学校考试数字化转型难题 【免费下载链接】xzs-mysql 学之思开源考试系统是一款 java vue 的前后端分离的考试系统。主要优点是开发、部署简单快捷、界面设计友好、代码结构清晰。支持web端和微信小程序,能覆盖到pc机和手机等…...
暗黑破坏神2存档编辑器的完整指南:5分钟学会免费修改D2/D2R游戏存档
暗黑破坏神2存档编辑器的完整指南:5分钟学会免费修改D2/D2R游戏存档 【免费下载链接】d2s-editor 项目地址: https://gitcode.com/gh_mirrors/d2/d2s-editor 你是否曾经因为角色build不理想而想重新开始?或者因为意外丢失了珍贵的装备而感到沮丧…...
