java中的循环结构
文章目录
- 流程控制
- 顺序结构
- if单选择结构
- if双选择结构
- if多选择结构
- 嵌套的if结构
- switch多选择结构
- 循环结构
- while循环
- do...while循环
- for循环
- 增强for循环
- break continue
- 练习案例
流程控制
顺序结构
java的基本结果就是顺序结构,除非特别指明,否则就按照顺序一句一句执行
顺序结果是最简单的算法结果
**语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构 **
if单选择结构
我们很多时候需要去判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用if语句来表示
语法:
if(布尔表达式) {// 如果布尔表达式为true将执行的语句
}
if双选择结构
现在有一个需求,小明有十块钱,用来买零食,如果成功,则输出购买成功,如果失败,则输出购买失败,我们需要有两个判断,需要一个双选择结构,所以就有了if-else结构
语法
if(布尔表达式) {// 如果布尔表达式的值为true
} else {// 如果布尔表达式的值为false
}
if多选择结构
我们发现真实的情况还可能存在区间多级判断,比如90-100就是A,80-90就是B…等,在生活中我们很多时候的选择也不仅仅只有两个,所以我们需要一个多选择结构来处理这类问题!
语法
if(布尔表达式1) {// 如果布尔表达式1的值为true执行代码
} else if(布尔表达式2) {// 如果布尔表达式2的值为true执行代码
} else if(布尔表达式3) {// 如果布尔表达式3的值为true执行代码
} else {// 如果以上布尔表达式都不为true执行代码
}
嵌套的if结构
使用嵌套的if…else语句是合法的,也就是说你可以在另一个if或者else if语句中使用if或者else if语句。可以像if语句一样嵌套else if …else
语法
if(布尔表达式 1) {// 如果布尔表达式1的值为true执行代码if(布尔表达式 2) {// 如果布尔表达式2的值为true执行代码}
}
switch多选择结构
多选择结构还有一个实现的方式就是switch case语句
switch case语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支
switch 语句中的变量类型可以是:
- byte、short、int或者char
- 从java SE 7 开始,switch 支持字符串String类型
- 同时 case 标签必须为字符串常量或字面量
案例:根据等级输出内容
package com.baoli.Scanner;
import java.util.Scanner;
public class SwitchDemo01 {public static void main(String[] args) {
// case穿透
// switch匹配一个具体的值System.out.println("请输入A-E之间的字符");Scanner scanner = new Scanner(System.in);String grade = scanner.next();switch (grade) {case "A":System.out.println("优秀");break;case "B":System.out.println("良好");break;case "C":System.out.println("及格");break;case "D":System.out.println("再接再厉");break;case "E":System.out.println("挂科");break;default:System.out.println("未知等级");}}
}
循环结构
-
while循环
-
to…while循环
-
for 循环
在java5中引入了一种主要用于数组的增强型for循环
while循环
while是最基本的循环,它的结构为:
while(布尔表达式) {// 循环内容
}
- 只要布尔表达式为true,循环就会一直执行
- 我们大多数情况是会让循环停止下来,我们需要一个让表达式失效的方式来结束循环
- 少部分情况需要循环一直执行,比如服务器的请求、响应监听等
- 循环条件一直为true就会造成无限循环,我们正确的业务编程中应该尽量避免死循环
- 思考:计算1+2+3+…+100=?
package com.baoli.struct;
public class WhileDemo01 {public static void main(String[] args) {
// 计算1+2+3+...+100=?int i = 0;int sum = 0;while (i<100) {i++;sum+=i;}System.out.println(sum);}
}
do…while循环
对于while语句而言,如果不满足条件,则不能进入循环,但有时候我们需要即使不满足条件,也至少执行一次
do…while循环和while循环相似,不同的是,do…while循环至少会执行一次
do {// 代码语句
}while(布尔表达式);
While和do-While的区别:
- while先判断后执行,do…while是先执行后判断!
- Do…while总是保证循环体会被至少执行一次
package com.baoli.struct;
public class DoWhileDemo01 {public static void main(String[] args) {
// 计算1+2+3+...+100=?int i = 0;int sum = 0;do {i++;sum+=i;}while (i<100);System.out.println(sum);}
}
for循环
虽然所有循环结构都可以用while或者do…while表示,但java提供了另一种语句——for循环,使一些循环结构变得更加简单
for循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环解构
for循环执行的次数是在执行前就确定的,语法格式如下:
for(初始化;布尔表达式;更新) {// 代码语句
}
- 练习1:计算0-100之间的奇数和,偶数和
- 练习2:用while或for循环输出1-1000之间能被5整除的数,并且每行输出3个
- 练习3:打印九九乘法表
package com.baoli.struct;public class ForDemo01 {public static void main(String[] args) {
// 练习1:计算0-100之间的奇数和,偶数和int oddSum = 0;int evenSum = 0;for (int i = 0; i < 100; i++) {if(i%2!=0){oddSum+=i;} else {evenSum+=i;}}System.out.println("奇数和为:"+oddSum);System.out.println("偶数和为:"+evenSum);}
}
package com.baoli.struct;public class ForDemo02 {public static void main(String[] args) {
// * 练习2:用while或for循环输出1-1000之间能被5整除的数,并且每行输出3个for (int i = 1; i < 1000; i++) {if(i%5==0) {System.out.print(i+"\t");}if (i%(5*3)==0) {System.out.println();}}}
}// println 输出完会换行
// print 输出完不会换行
/*
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
*/
增强for循环
java5引入了一种主要用于数组或集合的增强型for循环
java增强for循环语法格式如下
for(声明语句 : 表达式) {// 执行代码
}
- 声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配其作用域限定在循环语句块内,其值与此时数组元素的值相等
- 表达式:表达式是要访问的数组名,或者是返回值为数组的方法
package com.baoli.struct;public class ForDemo04 {public static void main(String[] args) {int[] numbers = {10,20,30,40,50};
// 遍历数组的元素for (int x:numbers) {System.out.println(x);}}
}
break continue
break在任何循环语句的主体部分,均可用break控制循环流程,break用于强行退出循环,不执行循环中剩余的语句。(break语句也在switch语句中使用)
continue语句用在循环语句体中,用于终止某次循环过程,即跳过循环中尚未执行的语句,接着进行下一次是否执行循环的判定
关于goto关键字
- goto关键字很早就在程序设计语言中出现,尽管goto仍是java的一个保留字,但并未在语言中得到正式使用;java没有goto。然而在break和continue这两个关键字的身上,我们仍然能看出一些goto的影子…带标签的break和continue
- “标签”是指后面跟一个冒号的标识符,例如:label
- 对java来说唯一用到标签的地方是在循环语句之前,而在循环之前设置标签的唯一理由是:我们希望在其中嵌套另一个循环,由于break和continue关键字通常只中断当前循环,但若随同标签使用,它们就会中断到存在标签的地方
package com.baoli.struct;public class BreakDemo {public static void main(String[] args) {int i = 0;while (i < 100) {i++;System.out.println(i);if (i == 30) {break;}}System.out.println("结束循环后,代码将继续运行");}
}
package com.baoli.struct;public class ContinueDemo {public static void main(String[] args) {int i = 0;while (i < 100) {i++;if(i % 10 == 0) {System.out.println();continue;}System.out.print(i + "\t");}}
}
package com.baoli.struct;public class LabelDemo {public static void main(String[] args) {
// 打印101到150之间的所有质数
// 质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数int count = 0;outer:for (int i = 101; i < 150; i++) {for(int j = 2;j < i/2;j++) {if (i % j == 0) {continue outer;}}count++;System.out.println("第"+count+"个质数为"+i);}}
}
练习案例
*************************
package com.baoli.struct;public class TestDemo {public static void main(String[] args) {
// 打印五行的三角形for (int i = 1; i <= 5; i++) {for(int j=5; j>=i;j--) {System.out.print(" ");}for (int k=1;k<=i;k++) {System.out.print("*");}for (int k=1;k<i;k++) {System.out.print("*");}System.out.println();}}
}
相关文章:
java中的循环结构
文章目录 流程控制顺序结构if单选择结构if双选择结构if多选择结构嵌套的if结构switch多选择结构 循环结构while循环do...while循环 for循环增强for循环 break continue练习案例 流程控制 顺序结构 java的基本结果就是顺序结构,除非特别指明,否则就按照…...
数学复习笔记 16
前言 例题真是经典。 background music 《青春不一样》 2.28 算一个行列式,算出来行列式不等于零,这表示矩阵式可逆的。但是这个算的秩是复合的,感觉没啥好办法了,我直接硬算了,之后再看解析积累好的方法。算矩阵…...
PySide6 GUI 学习笔记——常用类及控件使用方法(常用类颜色QColor)
文章目录 一、概述二、核心功能三、常用函数及方法四、代码示例五、注意事项 一、概述 QColor 是用于处理颜色的类,支持 RGB、HSV、HSL、CMYK 等多种颜色模型,提供颜色创建、转换、分量操作及格式转换功能。支持透明度设置,可通过颜色名称或…...
【Closure-Hayd】
RNA序列本身存在结构上的物理信息,因此可以利用文献提供的相关方法来对RNA序列的物理特征进行更加细致的提取。 几何向量编码(GVP模块)借鉴Rhodesign模型中的GVP(Geometric Vector Perceptron)模块,将每个…...
MySQL高可用架构
一、读写分离在高可用架构中的核心作用 1.读写分离与高可用的协同价值 在MySQL高可用架构中,读写分离不仅是性能优化的手段,更是提升系统容错能力的关键策略。通过将写操作(INSERT、UPDATE、DELETE) 集中到主节点,读…...
粒子群算法(PSO算法)
粒子群算法概述 1.粒子群优化算法(Particle Swarm Optimization,简称PSO)。粒子群优化算法是在1995年由Kennedy博士和Eberhart博士一起提出的,它源于对鸟群捕食行为的研究。 2.基本核心是利用群体中的个体对信息的共享从而使得整…...
信道编码技术介绍
信息与通信系统中的编码有4 种形式:信源编码、信道编码、密码编码和多址编码。 其中信道编码的作用是对信源经过压缩后的数据加一定数量受到控制的冗余,使得数据在传输中或接收中发生的差错可以被纠正或被发现,从而可以正确恢复出原始数据信息…...
JavaScript【4】数组和其他内置对象(API)
1.数组: 1.概述: js中数组可理解为一个存储数据的容器,但与java中的数组不太一样;js中的数组更像java中的集合,因为此集合在创建的时候,不需要定义数组长度,它可以实现动态扩容;js中的数组存储元素时,可以存储任意类型的元素,而java中的数组一旦创建后,就只能存储定义类型的元…...
【背包dp-----分组背包】------(标准的分组背包【可以不装满的 最大价值】)
通天之分组背包 题目链接 题目描述 自 01 01 01 背包问世之后,小 A 对此深感兴趣。一天,小 A 去远游,却发现他的背包不同于 01 01 01 背包,他的物品大致可分为 k k k 组,每组中的物品相互冲突,现在&a…...
docker-compose——安装mongo
编写docker-compose.yml version : 3.8services:zaomeng-mongodb:container_name: zaomeng-mongodbimage: mongo:latestrestart: alwaysports:- 27017:27017environment:- MONGO_INITDB_ROOT_USERNAMEroot- MONGO_INITDB_ROOT_PASSWORDpssw0rdvolumes:- ./mongodb/data:/data/…...
day 28
类 一个常见的类的定义包括了: 1. 关键字class 2. 类名 3. 语法固定符号冒号(:) 4. 一个初始化函数__init__(self) Pass占位符和缩进 Python 通过缩进来定义代码块的结构。当解释器遇到像 def, class, if, for 这样的语句,并且后面跟着冒号 : 时&…...
JavaScript入门【1】概述
1.JavaScript是什么? <font style"color:rgb(38,38,38);">Javascript (简称“JS”)是⼀种直译式脚本语⾔,⼀段脚本其实就是⼀系列指令,计算机通过这些指令来达成⽬标。它⼜是⼀种动态类型的编程语⾔。JS⽤来在⽹…...
MySQL 中 JOIN 和子查询的区别与使用场景
目录 一、JOIN:表连接1.1 INNER JOIN:内连接1.2 LEFT JOIN:左连接1.3 RIGHT JOIN:右连接1.4 FULL JOIN:全连接二、子查询:嵌套查询2.1 WHERE 子句中的子查询2.2 FROM 子句中的子查询2.3 SELECT 子句中的子查询三、JOIN 和子查询的区别3.1 功能差异3.2 性能差异3.3 使用场…...
DeepSeek 大模型部署全指南:常见问题、优化策略与实战解决方案
DeepSeek 作为当前最热门的开源大模型之一,其强大的语义理解和生成能力吸引了大量开发者和企业关注。然而在实际部署过程中,无论是本地运行还是云端服务,用户往往会遇到各种技术挑战。本文将全面剖析 DeepSeek 部署中的常见问题,提…...
Python 3.11详细安装步骤(包含安装包)Python 3.11详细图文安装教程
文章目录 前言Python 3.11介绍Python 3.11安装包下载Python 3.11安装步骤 前言 作为当前最热门的编程语言之一,Python 3.11 不仅拥有简洁优雅的语法,还在性能上实现了飞跃,代码运行速度提升显著。无论是初入编程的小白,还是经验丰…...
虚拟主播肖像权保护,数字时代的法律博弈
首席数据官高鹏律师团队 在虚拟主播行业蓬勃发展的表象之下,潜藏着一场关乎法律边界的隐形战争。当一位虚拟偶像的3D模型被非法拆解、面部数据被批量复制,运营方惊讶地发现——传统的肖像权保护体系,竟难以完全覆盖这具由代码与数据构成的“…...
硬件工程师笔记——二极管Multisim电路仿真实验汇总
目录 1 二极管基础知识 1.1 工作原理 1.2 二极管的结构 1.3 PN结的形成 1.4 二极管的工作原理详解 正向偏置 反向偏置 multisim使用说明链接 2 二极管特性实验 2.1 二极管加正向电压 2.2 二极管加反向电压 2.3 二极管两端的电阻 2.4 交流电下二级管工作 2.5 二极…...
学习笔记(C++篇)—— Day 6
1.内部类 如果一个类定义在另一个类的内部,就叫做内部类。 例如下面一个代码示例: class A { private:static int _k;int _h 1; public:class B // B默认就是A的友元{public:void foo(const A& a){cout << _k << endl; //OKcout <&…...
常见的实时通信技术(轮询、sse、websocket、webhooks)
1. HTTP轮询:最老实的办法 刚开始做实时功能时,我第一个想到的就是轮询。特别简单直白,就像你每隔5分钟就刷新一次朋友圈看看有没有新消息一样。 短轮询:勤快但费劲 短轮询就是客户端隔三差五地问服务器:"有新…...
2025年第三届盘古石杯初赛(智能冰箱,监控部分)
前言 所以去哪里可以取到自己家里的智能家居数据呢???? IOT物联网取证 1、分析冰箱,请问智能冰箱的品牌? [答案格式:xiaomi] Panasonic2、请问智能冰箱的型号? [答案格式&#x…...
[强化学习的数学原理—赵世钰老师]学习笔记02-贝尔曼方程
本人为强化学习小白,为了在后续科研的过程中能够较好的结合强化学习来做相关研究,特意买了西湖大学赵世钰老师撰写的《强化学习数学原理》中文版这本书,并结合赵老师的讲解视频来学习和更深刻的理解强化学习相关概念,知识和算法技…...
基于STM32的INA226电压电流检测仪
系统总体框图 功率检测装置原理图功能及模块连接说明 一、系统功能概述 该装置以STM32F103C8T6微控制器为核心,集成功率检测、数据交互、状态显示和用户提示功能,通过模块化设计实现稳定运行。 二、各模块功能及连接方式 按键模块 功能:…...
Android7 Input(七)App与input系统服务建立连接
概述 本文主要讲述Android 系统创建窗口时与输入管理系统服务通过InputChannel通道建立通信桥梁的过程。 本文涉及的源码路径 frameworks/native/libs/input/InputTransport.cpp frameworks/base/core/java/android/view/InputChannel.java frameworks/base/core/java/andr…...
1.2 C++第一个程序
第一个程序:Hello World 教程 目标 用 cout 输出文字,学会用 endl 换行。理解程序的基本结构,明白 main 函数的作用。 一、程序是什么?——像“魔法食谱” 比喻:写程序就像写一份做蛋糕的食谱! 食材&am…...
Hi3516DV500刷写固件
hi3516DV500刷固件 1、硬件连接 2、软件准备 3、刷固件步骤 一、硬件连接 特别注意的是,串口的接线顺序 通过网线连接好笔记本和开发板后,需要确认一下网口水晶头是否闪烁,以确认网络物理是否连通 二、软件资源准备 固件包准备 打开工具…...
完整卸载 Fabric Manager 的方法
目录 ✅ 完整卸载 Fabric Manager 的方法 1️⃣ 停止并禁用服务 2️⃣ 卸载 Fabric Manager 软件包 3️⃣ 自动清理无用依赖(可选) 4️⃣ 检查是否卸载成功 ✅ 补充(仅清除服务,不删包) ✅ 完整卸载 Fabric Mana…...
linux标准库头文件解析
linuxc标准库 C 标准库(C Standard Library)包含了一组头文件,这些头文件提供了许多函数和宏,用于处理输入输出、字符串操作、数学计算、内存管理等常见编程任务。。 头文件功能简介<stdio.h>标准输入输出库,包含…...
PLC和变频器之间如何接线
这篇文章想梳理一下,不同电平输出的PLC应该如何去接不同品牌的变频器 对于PLC的IO来讲,有高低电平输入的不同,有高低电平输出的区别 对于变频器的DI或DO来讲,不同的品牌内部线路和原理也有区别 我们场地现在用的是西门子1200的…...
【Spring】Spring的请求处理
欢迎来到啾啾的博客🐱。 记录学习点滴。分享工作思考和实用技巧,偶尔也分享一些杂谈💬。 欢迎评论交流,感谢您的阅读😄。 目录 引言HTTP/HTTPS协议Spring Web与Spring Web MVCSpring WebFlux 自定义的TPC/IP协议FTP、S…...
现代健康生活养生指南
现代社会中,熬夜加班、久坐不动、饮食不规律成为许多人的生活常态,由此引发的健康问题也日益增多。想要摆脱亚健康,不必依赖中医理念,从以下这些现代科学养生方法入手,就能逐步改善身体状况。 饮食上,注…...
使用tensorRT10部署低光照补偿模型
1.低光照补偿模型的简单介绍 作者介绍一种Zero-Reference Deep Curve Estimation (Zero-DCE)的方法用于在没有参考图像的情况下增强低光照图像的效果。 具体来说,它将低光照图像增强问题转化为通过深度网络进行图像特定曲线估计的任务。训练了一个轻量级的深度网络…...
题单:表达式求值1
题目描述 给定一个只包含 “加法” 和 “乘法” 的算术表达式,请你编程计算表达式的值。 输入格式 输入仅有一行,为需要计算的表达式,表达式中只包含数字、加法运算符 和乘法运算符 *,且没有括号。 所有参与运算的数字不超过…...
【ant design】ant-design-vue 4.0实现主题色切换
官网:Ant Design Vue — An enterprise-class UI components based on Ant Design and Vue.js 我图方便,直接在 app.vue 中加入的 <div class"app-content" v-bind:class"appOption.appContentClass"><a-config-provider…...
MinIO深度解析:从入门到实战——对象存储系统全指南
在当今数字化时代,数据存储至关重要。MinIO作为一款高性能的对象存储系统,正逐渐受到广泛关注。它与云原生存储系统相媲美,并且其API与Amazon S3完全兼容。本文将带您快速了解MinIO,并探讨其在实际中的应用场景。 一、关于MinIO …...
(8)python开发经验
文章目录 1 下载python2 pip安装依赖无法访问3 系统支持4 下载python文档5 设置虚拟环境6 编译安装python 更多精彩内容👉内容导航 👈👉Qt开发 👈👉python开发 👈 1 下载python 下载地址尽量不要下载最新版…...
uniapp自动构建pages.json的vite插件
对于 uniapp 来说,配置 pages.json 无疑是最繁琐的事情,具有以下缺点: 冗长,页面很多时 pages 内容会很长难找,有时候因为内容很长,导致页面配置比较难找,而且看起来比较凌乱json弊端ÿ…...
【MySQL进阶】如何在ubuntu下安装MySQL数据库
前言 🌟🌟本期讲解关于如何在ubuntu环境下安装mysql的详细介绍~~~ 🌈感兴趣的小伙伴看一看小编主页:GGBondlctrl-CSDN博客 🔥 你的点赞就是小编不断更新的最大动力 dz…...
解放双手的全自动抠图工具
软件介绍 本文要介绍的这款软件是Teorex PhotoScissors,是一款全自动抠图软件。 第二段:软件便捷性 这款来自国外的软件堪称神器,目前已解锁可无限使用。使用起来特别方便,无需安装,打开即可直接操作,并…...
Python多进程编程执行任务
我的需求如下:现有一批任务,使用进程池执行,每个任务执行耗时不一样,任务并发执行期间,需要每隔一段时间监控任务执行进度 直接贴代码: import multiprocessing import time import random from multiproc…...
【Linux笔记】——Linux线程封装
🔥个人主页🔥:孤寂大仙V 🌈收录专栏🌈:Linux 🌹往期回顾🌹:【Linux笔记】——Linux线程控制创建、终止与等待|动态库与内核联动 🔖流水不争,争的是…...
ChatGPT + DeepSeek 联合润色的 Prompt 模板指令合集,用来润色SCI论文太香了!
对于非英语母语的作者来说,写SCI论文的时候经常会碰到语法错误、表达不够专业、结构不清晰以及术语使用不准确等问题。传统的润色方式要么成本高、效率低,修改过程又耗时又费力。虽然AI工具可以帮助我们来润色论文,但单独用ChatGPT或DeepSeek都会存在内容泛泛、专业性不足的…...
【typenum】 9 与常量泛型桥接(generic_const_mappings.rs)
一、源码 该代码提供了常量结构体与库类型的转换。 // THIS IS GENERATED CODE //! Module with some const-generics-friendly definitions, to help bridge the gap //! between those and typenum types. //! //! - It requires the const-generics crate feature to be…...
并发学习之synchronized,JVM内存图,线程基础知识
文章目录 Java内存图内存图区域介绍执行流程 进程和线程概念解释线程的6种状态简述等待队列和同步队列(阻塞队列)线程之间是独立的 synchronized静态方法非静态方法代码块 知识总结: 方法区存储类信息正在执行的程序叫进程,进程会…...
使用Docker部署Nacos
sudo systemctl start docker sudo systemctl enable docker docker --version 步骤 2: 拉取 Nacos Docker 镜像 拉取 Nacos 镜像: 你可以从 Docker Hub 上拉取官方的 Nacos 镜像,使用以下命令: docker pull nacos/nacos-server 这会从 …...
如何 naive UI n-data-table 改变行移动光标背景色
默认是light 灰,想换个显眼包色,折腾半天,可以了。 无废话上代码: <template><n-data-tablesize"small":columns"columns":data"sortedDataList":bordered"true":row-key"…...
Maven 插件扩展点与自定义生命周期
🧑 博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编…...
Redis的发布订阅模型是什么,有哪些缺点?
Redis 发布订阅模型概述 Redis 发布订阅(Pub/Sub)是一种消息广播模式,核心角色包括: 发布者(Publisher):向指定频道(Channel)发送消息。频道(Channel&#…...
【EDA软件】【联合Modelsim仿真使用方法】
背景 业界EDA工具仿真功能是必备的,例如Vivado自带仿真工具,且无需联合外部仿真工具,例如MoodelSim。 FUXI工具仿真功能需要联合Modelsim,才能实现仿真功能。 方法一:FUXI联合ModelSim 1 添加testbench文件 新建to…...
C语言_动态内存管理
1. 为什么存在动态内存分配 ? 当前,我们掌握的内存开辟方式有: int val22;// 在栈空间上开辟四个字节 char arr[10]{0};// 在栈空间上开辟10个字节的连续空间而上述的开辟空间的方式有两个特点: 空间开辟大小示固定的数组在申明的时候&am…...
使用Langfuse和RAGAS,搭建高可靠RAG应用
大家好,在人工智能领域,RAG系统融合了检索方法与生成式AI模型,相比纯大语言模型,提升了准确性、减少幻觉且更具可审计性。不过,在实际应用中,当建好RAG系统投入使用时,如何判断接收信息是否正确…...