【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创建子进程 进程状态进程状态查看僵尸进程孤儿进程 📓总结 📄前言 作为一名程序员,…...
IronClaw:基于零信任架构的AI智能体安全框架设计与实战
1. 项目概述:一个为安全而生的AI智能体框架如果你正在寻找一个能让你安心地将AI智能体部署到生产环境的框架,那么IronClaw的出现,可能正是时候。在AI智能体(AI Agent)领域,我们正面临一个核心矛盾ÿ…...
构建命令行记忆系统:从原理到实践,打造个人终端知识库
1. 项目概述:一个为命令行注入记忆的“外挂”如果你经常在终端里工作,肯定遇到过这样的场景:上周你刚用一条复杂的ffmpeg命令处理了视频,今天想再用,却怎么也想不起具体的参数组合了;或者,你花了…...
Claude Code多项目管理实战:AI代理分层架构与自动化工作流配置
1. 项目概述:一个为多项目开发者设计的Claude Code实战配置如果你和我一样,手里同时维护着十几个不同技术栈、不同用途的个人项目,从家庭预算工具到个人知识库,再到各种小游戏,那你一定理解那种在多个代码仓库间反复横…...
Rust版LangChain:llm-chain构建高性能LLM应用实践
1. 项目概述:为什么我们需要一个Rust版的LangChain?如果你最近在折腾大语言模型应用,大概率听说过LangChain。它用Python写成,通过“链”的概念把提示词、工具调用、记忆管理这些功能串起来,让构建复杂AI应用变得像搭积…...
AI智能体如何通过RAG技术实现基于文件内容的自动化任务规划
1. 项目概述:当AI规划器学会“看”文件最近在折腾AI智能体(Agent)和自动化流程时,我遇到了一个挺有意思的项目:copaw-planning-with-files。光看名字,copaw这个组合词就挺有辨识度的,它很可能是…...
AAEON PICO-ASL4工业级Pico-ITX单板计算机解析与应用
1. AAEON PICO-ASL4工业级Pico-ITX单板计算机深度解析在工业自动化和边缘计算领域,对小型化、低功耗且高性能计算设备的需求日益增长。AAEON推出的PICO-ASL4正是针对这一需求设计的解决方案。这款采用Pico-ITX规格的单板计算机(SBC)集成了Intel最新的Atom x7000RE系…...
AI智能体主动搜索框架:从工具调用到自主寻求信息
1. 项目概述:当智能体学会“主动搜索”最近在折腾AI智能体(Agent)时,我一直在思考一个问题:如何让一个智能体在面对未知或动态变化的信息时,不再局限于其内置的、可能过时的知识库,而是能像人类…...
Cursor Rules:为AI编程助手定制团队开发规范,提升代码质量与一致性
1. 项目概述:为AI编程助手打造一套“开发宪法”如果你和我一样,深度使用Cursor IDE进行现代应用开发,尤其是涉及AWS无服务器、Next.js或React Native这类技术栈,那你一定有过这样的体验:每次开启一个新的Chat会话&…...
Minecraft存档损坏修复终极指南:5个步骤挽救你的像素世界
Minecraft存档损坏修复终极指南:5个步骤挽救你的像素世界 【免费下载链接】Minecraft-Region-Fixer Python script to fix some of the problems of the Minecraft save files (region files, *.mca). 项目地址: https://gitcode.com/gh_mirrors/mi/Minecraft-Reg…...
终极B站视频下载器:轻松获取4K高清与大会员专享内容
终极B站视频下载器:轻松获取4K高清与大会员专享内容 【免费下载链接】bilibili-downloader B站视频下载,支持下载大会员清晰度4K,持续更新中 项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader 想永久保存B站的学习资…...
