Java-模块二-2
整数类型
-
byte:在 Java 中占用8位(1字节),因此它的取值范围是从 -128 到 127。这是最小的整数类型,适合用于节省空间的情况。
-
short:这种类型的大小是16位(2字节),允许的数值范围从 -32,768 到 32,767。当需要比
byte
更大的数值范围但又不想使用更大的存储空间时,可以使用short
类型。 -
int:作为最常用的整数类型,
int
占用32位(4字节),支持的数值范围从 -2,147,483,648 到 2,147,483,647。它适用于大多数整数运算场景。 -
long:这是一种64位(8字节)的数据类型,提供了极大的数值范围,从 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807。当你需要处理超出
int
范围的数值时,可以选择long
。
浮点类型
-
float:这是一种单精度浮点数类型,占用32位(4字节)。它可以表示大约7位有效数字的数值范围,适用于需要小数点数值且对精度要求不是特别高的情况。
-
double:双精度浮点数占用64位(8字节),能够提供大约15位的有效数字。对于需要高精度的小数运算,通常推荐使用
double
类型。
字符类型
- char:字符类型占用16位(2字节),基于Unicode编码,意味着它可以表示一个广泛的字符集中的任何一个字符。其取值范围是0到65,535,对应于Unicode字符集中的字符。
布尔类型
- boolean:布尔类型用于表示逻辑值,仅有两个可能的值:
true
和false
。尽管它的实际内存大小没有明确规定,但它仅限于这两个值之一,用于条件判断和控制流程。
变量的运算
1)算术运算
算术运算是最常见的运算类型,用于执行数学计算。常见的算术运算符包括:
+
:加法-
:减法*
:乘法/
:除法%
:取模(求余数)++
:自增(增加1)--
:自减(减少1)
示例:
int a = 10;
int b = 3;
int sum = a + b; // 加法,sum = 13
int diff = a - b; // 减法,diff = 7
int product = a * b; // 乘法,product = 30
int quotient = a / b; // 整数除法,quotient = 3(只保留整数部分)
int remainder = a % b; // 取模,remainder = 1
a++; // 自增,a = 11
b--; // 自减,b = 2
注意:
- 如果两个整数相除,结果会是整数(小数部分会被截断)。如果需要浮点数结果,至少一个操作数应该是浮点数。
- 取模运算的结果符号与被除数相同。
(2)关系运算
关系运算用来比较两个变量或值,返回布尔值(true
或 false
)。常见关系运算符包括:
==
:等于!=
:不等于>
:大于<
:小于>=
:大于等于<=
:小于等于
示例:
int x = 5;
int y = 10;
boolean isEqual = (x == y); // false
boolean isNotEqual = (x != y); // true
boolean isGreater = (x > y); // false
boolean isLessOrEqual = (x <= y); // true
(3)逻辑运算
逻辑运算用于对布尔值进行组合或操作,返回布尔值。常见逻辑运算符包括:
&&
:逻辑与(AND),当且仅当两个操作数都为true
时返回true
||
:逻辑或(OR),当任意一个操作数为true
时返回true
!
:逻辑非(NOT),反转布尔值
示例:
boolean a = true;
boolean b = false;
boolean result1 = a && b; // false
boolean result2 = a || b; // true
boolean result3 = !a; // false
短路特性:
&&
和||
具有短路特性。例如,在a && b
中,如果a
为false
,则不会计算b
的值,因为整个表达式已经确定为false
。
(4)位运算
位运算直接对变量的二进制位进行操作。常见位运算符包括:
&
:按位与|
:按位或^
:按位异或~
:按位取反<<
:左移>>
:右移(带符号)>>>
:无符号右移
示例:
int a = 6; // 二进制:0110
int b = 3; // 二进制:0011
int andResult = a & b; // 按位与:0010(十进制:2)
int orResult = a | b; // 按位或:0111(十进制:7)
int xorResult = a ^ b; // 按位异或:0101(十进制:5)
int notResult = ~a; // 按位取反:11111111111111111111111111111001(十进制:-7)
int shiftLeft = a << 1; // 左移一位:1100(十进制:12)
int shiftRight = a >> 1; // 右移一位:0011(十进制:3)
(5)赋值运算
赋值运算将右侧的值赋给左侧的变量。常见的赋值运算符包括:
=
:简单赋值+=
:加后赋值-=
:减后赋值*=
:乘后赋值/=
:除后赋值%=
:取模后赋值<<=
、>>=
、>>>=
:位移后赋值
示例:
int x = 10;
x += 5; // 等价于 x = x + 5,x = 15
x -= 3; // 等价于 x = x - 3,x = 12
x *= 2; // 等价于 x = x * 2,x = 24
x /= 4; // 等价于 x = x / 4,x = 6
x %= 5; // 等价于 x = x % 5,x = 1
2. 运算注意事项
-
数据类型转换:
- 当不同数据类型参与运算时,Java 会自动进行类型提升(隐式转换)。例如,
int
和double
运算时,int
会被提升为double
。 - 如果需要显式转换,可以使用强制类型转换(如
(int)
)。
示例:
int a = 5; double b = 2.5; double result = a + b; // 自动提升为 double,result = 7.5 int truncated = (int) result; // 强制转换为 int,truncated = 7
- 当不同数据类型参与运算时,Java 会自动进行类型提升(隐式转换)。例如,
-
溢出问题:
- 如果变量的值超出了其数据类型的取值范围,会导致溢出。例如,
byte
类型的最大值是 127,如果对其加 1,则会溢出为 -128。
示例:
byte b = 127; b++; // 溢出,b = -128
- 如果变量的值超出了其数据类型的取值范围,会导致溢出。例如,
-
运算符优先级:
- 不同运算符有不同的优先级。例如,
*
和/
的优先级高于+
和-
。 - 使用括号可以改变优先级。
示例:
int result = 10 + 5 * 2; // 先乘后加,result = 20 int resultWithParentheses = (10 + 5) * 2; // 先加后乘,resultWithParentheses = 30
- 不同运算符有不同的优先级。例如,
3. 总结
变量的运算是编程中的核心内容,涵盖了算术、关系、逻辑、位运算以及赋值等多种操作。掌握这些运算规则及其注意事项,可以帮助你编写高效、安全的代码。不同类型的数据在运算时需要注意类型转换和溢出等问题,以避免潜在的错误。
转义字符
1. 常见转义字符
(1)换行符:\n
-
表示换行。
-
将光标移动到下一行的开头。
-
示例:
System.out.println("Hello\nWorld"); // 输出: // Hello // World
(2)水平制表符:\t
- 插入一个水平制表位,通常相当于 4 或 8 个空格。
- 示例:
System.out.println("Name:\tAlice"); // 输出: // Name: Alice
(3)反斜杠:\\
-
用于表示一个反斜杠字符本身。
-
示例:
System.out.println("C:\\Program Files\\Java"); // 输出: // C:\Program Files\Java
(4)双引号:\"
-
用于表示字符串中的双引号字符。
-
示例:
System.out.println("He said, \"Hello!\""); // 输出: // He said, "Hello!"
(5)单引号:\'
-
用于表示字符字面量中的单引号字符。
-
示例:
char singleQuote = '\''; System.out.println(singleQuote); // 输出: // '
(6)退格符:\b
-
表示退格操作,将光标回退一格。
-
示例:
System.out.println("Hello\bWorld"); // 输出: // HellWorld
(7)回车符:\r
- 表示回车操作,将光标移动到当前行的开头。
- 示例:
System.out.println("Hello\rWorld"); // 输出: // World
(8)换页符:\f
- 表示换页操作,主要用于打印机等设备。
- 示例:
System.out.println("Page1\fPage2"); // 输出: // Page1 // (分页效果)
(9)Unicode 字符:\uXXXX
-
用于表示 Unicode 字符,其中
XXXX
是四位十六进制数。 -
示例:
System.out.println("\u0041"); // 输出字符 'A'
2. 转义字符的应用场景
(1)处理文件路径
在 Windows 系统中,文件路径中使用反斜杠(\
),但在 Java 字符串中需要对反斜杠进行转义。
String filePath = "C:\\Users\\Alice\\Documents\\file.txt";
System.out.println(filePath);
// 输出:
// C:\Users\Alice\Documents\file.txt
(2)格式化输出
使用 \n
和 \t
可以轻松实现换行和对齐。
System.out.println("Name:\tAlice\nAge:\t25");
// 输出:
// Name: Alice
// Age: 25
(3)嵌入特殊字符
如果需要在字符串中包含双引号或单引号,可以使用转义字符。
System.out.println("She said, \"It's a beautiful day!\"");
// 输出:
// She said, "It's a beautiful day!"
(4)Unicode 字符支持
使用 \uXXXX
可以插入任何 Unicode 字符。
System.out.println("Smile: \u263A"); // 输出笑脸符号 ☺
3. 注意事项
-
转义字符仅适用于字符串和字符字面量
- 转义字符只能出现在字符串(
"..."
)或字符('...'
)中。 - 如果在其他地方使用(如注释中),则不会被解析为转义字符。
- 转义字符只能出现在字符串(
-
非法转义字符会导致编译错误
-
如果使用了未定义的转义字符(如
\z
),编译器会报错。 -
示例:
System.out.println("Invalid escape sequence: \z"); // 编译错误:Illegal escape character in string literal
-
-
转义字符的长度
- 转义字符被视为单个字符。例如,
'\n'
的长度为 1。
- 转义字符被视为单个字符。例如,
float和double的区别
在 Java 中,float 和 double 都是用于表示浮点数的数据类型,但它们之间存在一些重要的区别。这些差异主要体现在精度、取值范围以及内存占用等方面。
-
精度
float:单精度浮点数,提供大约7位有效数字的精度。
double:双精度浮点数,提供大约15位有效数字的精度。
由于 double 提供更高的精度,所以在需要高精度计算时通常推荐使用 double 类型。 -
取值范围
float:
取值范围大约是从 ±3.4E-38 到 ±3.4E+38。
占用32位(4字节)存储空间。
double:
取值范围大约是从 ±1.7E-308 到 ±1.7E+308。
占用64位(8字节)存储空间。
因此,double 不仅提供了更高的精度,还拥有更广的数值范围。 -
内存占用
float:因为是单精度浮点数,所以占用较少的内存(32位/4字节),适用于对内存使用有严格要求的情况。
double:作为双精度浮点数,它占用更多的内存(64位/8字节),但在大多数现代计算机上,这点额外的开销通常是可接受的,尤其是考虑到其提供的更高精度和更广的数值范围。 -
默认类型
在 Java 中,如果一个浮点数没有特别指定为 float 类型,默认它是 double 类型。例如,直接写出 3.14 是一个 double 值,而要将其定义为 float 类型,则需要在其后加上 f 或 F,如 3.14f。 -
应用场景
float:当程序对内存使用非常敏感,且不需要非常高精度的浮点数运算时(比如图形处理、游戏开发等),可以考虑使用 float。
double:对于科学计算、工程应用或其他需要高精度浮点数运算的应用场景,建议使用 double。
示例代码
float floatVar = 3.14f; // 使用 'f' 后缀来声明 float 变量
double doubleVar = 3.14; // 默认为 double 类型System.out.println("Float value: " + floatVar);
System.out.println("Double value: " + doubleVar);
相关文章:
Java-模块二-2
整数类型 byte:在 Java 中占用8位(1字节),因此它的取值范围是从 -128 到 127。这是最小的整数类型,适合用于节省空间的情况。 short:这种类型的大小是16位(2字节),允许的…...
使用VS2022编译CEF
前提 选择编译的版本 CEF自动编译,在这里可以看到最新的稳定版和Beta版。 从这里得出,最新的稳定版是134.0.6998.118,对应的cef branch是6998。通过这个信息可以在Build requirements查到相关的软件配置信息。 这里主要看Windows下的编译要…...
大模型RLHF训练-PPO算法详解:Proximal Policy Optimization Algorithms
一、TL;DR 提出了一种新的策略梯度方法家族,用于强化学习,这些方法交替进行与环境交互采样数据提出了一个新的目标函数,使得能够进行多个小批量更新的多轮训练这些新方法为近端策略优化(Proximal Policy Optimization…...
【STM32实物】基于STM32的扫地机器人/小车控制系统设计
基于STM32的扫地机器人/小车控制系统设计 演示视频: 基于STM32的扫地机器人小车控制系统设计 简介:扫地机器人系统采用分层结构设计,主要包括底层硬件控制层、中间数据处理层和上层用户交互层。底层硬件控制层负责对各个硬件模块进行控制和数据采集,中间数据处理层负责对采…...
【C++初阶】从零开始模拟实现vector(含迭代器失效详细讲解)
目录 1、基本结构 1.1成员变量 1.2无参构造函数 1.3有参构造函数 preserve()的实现 代码部分: push_back()的实现 代码部分: 代码部分: 1.4拷贝构造函数 代码部分: 1.5支持{}初始化的构造函数 代码部分: …...
AI比人脑更强,因为被植入思维模型【21】冯诺依曼思维模型
定义 冯诺依曼思维模型是一种基于数理逻辑和系统分析的思维方式,它将复杂的问题或系统分解为若干个基本的组成部分,通过建立数学模型和逻辑规则来描述和分析这些部分之间的关系,进而实现对整个系统的理解和优化。该模型强调从整体到局部、再…...
Keil5调试技巧
一、引言 Keil5作为一款广泛应用于嵌入式系统开发的集成开发环境(IDE),在微控制器编程领域占据着重要地位。它不仅提供了强大的代码编辑和编译功能,还具备丰富的调试工具,帮助开发者快速定位和解决代码中的问题。本文…...
Web PKI现行应用、标准
中国现行 Web PKI 标准 中国在 Web PKI(公钥基础设施)领域制定了多项国家标准,以确保网络安全和数字证书管理的规范性。以下是一些现行的重要标准: 1. GB/T 21053-2023《信息安全技术 公钥基础设施 PKI系统安全技术要求》 该标…...
ROS多机通信(四)——Ubuntu 网卡 Mesh 模式配置指南
引言 使用Ad-hoc加路由协议和直接Mesh模式配置网卡实现的网络结构是一样的,主要是看应用选择, Ad-Hoc模式 B.A.T.M.A.N. / OLSR 优点:灵活性高,适合移动性强或需要优化的复杂网络。 缺点:配置复杂,需手动…...
【实用部署教程】olmOCR智能PDF文本提取系统:从安装到可视化界面实现
文章目录 引言系统要求1. 环境准备:安装Miniconda激活环境 2. 配置pip源加速下载3. 配置学术加速(访问国外资源)4. 安装系统依赖5. 安装OLMOCR6. 运行OLMOCR处理PDF文档7. 理解OLMOCR输出结果9. 可视化UI界面9.1 安装界面依赖9.2 创建界面应用…...
STM32单片机uCOS-Ⅲ系统11 中断管理
目录 一、异常与中断的基本概念 1、中断的介绍 2、和中断相关的名词解释 二、中断的运作机制 三、中断延迟的概念 四、中断的应用场景 五、中断管理讲解 六、中断延迟发布 1、中断延迟发布的概念 2、中断队列控制块 3、中断延迟发布任务初始化 OS_IntQTaskInit() 4…...
CTF【WEB】学习笔记1号刊
Kali的小工具箱 curl www.xxx.com:查看服务器响应返回的信息 curl -I www.xxx.com:查看响应的文件头 一、cmd执行命令 ipconfig:ip地址配置等; 二、 Kali操作 1.sudo su; 2.msfconsole 3.search ms17_010 永恒之蓝ÿ…...
cpp-友元
理解 C 中的友元(Friend) 在 C 语言中,封装(Encapsulation) 是面向对象编程的重要特性之一。它允许类将数据隐藏在私有(private)或受保护(protected)成员中,…...
Spring AOP 核心概念与实践指南
第一章:AOP 核心概念与基础应用 1.1 AOP 核心思想 面向切面编程:通过横向抽取机制解决代码重复问题(如日志、事务、安全等)核心优势:不修改源代码增强功能,提高代码复用性和可维护性 1.2 基础环境搭…...
利用ffmpeg库实现音频Opus编解码
一、编译与环境配置 libopus库集成 需在编译FFmpeg时添加--enable-libopus参数,编译前需先安装libopus源码并配置动态库路径。最新FFmpeg 7.1版本默认支持Opus的浮点运算优化和VBR/CVBR模式。 多平台兼容性 Opus支持Windows/Linux/macOS平台࿰…...
深入理解指针(1)(C语言版)
文章目录 前言一、内存和地址1.1 内存1.2 究竟该如何理解编址 二、指针变量和地址2.1 取地址操作符&2.2 指针变量和解引用操作符*2.2.1 指针变量2.2.2 如何拆解指针类型2.2.3 解引用操作符 2.3 指针变量的大小 三、指针变量类型的意义3.1 指针的解引用3.2 指针-整数3.3 voi…...
计算机网络——通信基础和传输介质
物理层任务:实现相邻节点之间比特(0或1)的传输 到了数据链路层之后,它会以帧为单位,把若干个比特交给物理层,物理层需要把这些比特信息转化成信号,在物理传输媒体上进行传输 通信基础基本概念 信…...
【橘子网络】关于网络分层以及协议的全局讲解
一、网络设备 1、硬件网络设备 1.1、主机(host) 主机的定义比较广泛,所有的接收流量或者发送流量的设备都可以被称之为主机。可以是电脑,手机,服务器。在当今云服务大行其道的局面下,各种云设备也可以被称之为主机。 基于这个…...
macOS 使用 enca 识别 文件编码类型(比 file 命令准确)
文章目录 macOS 上安装 enca基本使用起因 - iconv关于 enca安装 Encaenca & enconv 其它用法 macOS 上安装 enca brew install enca基本使用 enca filepath.txt示例 $ enca 动态规划算法.txt [0] Simplified Chinese National Standard; GB2312CRLF line terminat…...
MySQL 字符集
目录 字符集的基本概念 常见MySQL字符集 ascii(单字节字符集) latin1(单字节字符集) utf8(多字节字符集) utf8mb4(多字节字符集) MySQL默认字符集 MySQL字符集的层次级别 服务器级别 数据库级别 表级别 列级别 连接字符集 字符集是计算机科学中的一个重要概念&…...
Linux shell脚本3-if语句、case语句、for语句、while语句、until语句、break语句、continue语句,格式说明及程序验证
目录 1.if 控制语句 1.1 if 语句格式 1.2 程序验证 2.case语句 2.1case语句格式 2.2程序验证 2.2.1 终端先执行程序,在输入一个数 2.2.2 终端执行程序时同时输入一个预设变量 2.2.3 case带有按位或运算和通配符匹配 3.for语句 3.1for语句格式 3.2程序验…...
基于虚拟知识图谱的语义化决策引擎
在数字化转型浪潮中,企业数据资产的价值释放面临两大挑战:海量异构数据的整合困局与业务-技术语义鸿沟。本文解析飞速创软灵燕智能体平台的创新解决方案——通过构建业务语义驱动的虚拟知识图谱系统,实现企业数据的智能认知与决策赋能。 一、…...
Unity Shader 的编程流程和结构
Unity Shader 的编程流程和结构 Unity Shader 的编程主要由以下三个核心部分组成:Properties(属性)、SubShader(子着色器) 和 Fallback(回退)。下面是它们的具体作用和结构: 1. Pr…...
C++ 继承
目录 一、继承的概念与定义 1.1 继承的概念 1.2 继承的定义 1.2.1 语法 1.2.2 继承关系和访问限定符 1.2.3 继承基类成员访问方式的变化 二、基类和派生类对象赋值转换 三、继承中的作用域 四、派生类的默认成员函数 五、C11 final 六、继承与友元 七、继承与静态成…...
XSS Game(DOM型) 靶场 通关
目录 靶场网址 Ma Spaghet! 分析 解题 Jefff 分析 解题 方法一 方法二 Ugandan Knuckles 分析 解题 Ricardo Milos 分析 解题 Ah Thats Hawt 分析 解题 方法一 方法二 Ligma 分析 解题 Mafia 分析 解题 方法一:构造函数 方法二…...
XSS基础靶场练习
目录 1. 准备靶场 2. PASS 1. Level 1:无过滤 源码: 2. level2:转HTML实体 htmlspecialchars简介: 源码 PASS 3. level3:转HTML深入 源码: PASS 4. level4:过滤<> 源码: PASS: 5. level5:过滤on 源码…...
leetcode-200.岛屿数量
首先,想要找岛,肯定是要逐个遍历的,否则肯定会漏岛。 其次,我怎么知道两个点是否属于一个岛?只有一个方法,我踏上一个岛的某个点时,我就分别往四周走,且把当前地块毁掉,就…...
Linux | ubuntu安装 SSH 软件及测试工具
01 windows 要怎么和 ubuntu 互传文件呢,我们可以使用 ssh 软件。 终端输入 sudo apt-get install openssh-server ,输入登录 Ubuntu 用户的密码,这里我们输入 y 确认安装。如下图所示。 接着继续改 ssh 配置文件,因为 ssh 默认…...
组件日志——etcd
目录 一、简介 二、安装【Ubuntu】 安装etcd 安装CAPI 三、写一个示例 3.0写一个示例代码 3.1获取一个etcd服务 3.2获取租约(写端操作) 3.3使用租约(写端操作) 3.4销毁租约(写端操作) 3.5获取etcd服务中的服务列表(读端操作) 3.6监听状态变化(读端操作) 一、简介 Et…...
search_fields与filterset_fields的使用
在Django中,search_fields 和 filterset_fields 可以在视图类中使用,尤其是在 Django REST Framework (DRF) 中。它们分别用于实现搜索和过滤功能。以下是它们在视图类中的具体使用方法。 1. search_fields 在视图类中的使用 search_fields 是 DRF 中 S…...
SQLite Delete 语句详解
SQLite Delete 语句详解 SQLite 是一种轻量级的数据库管理系统,广泛应用于移动设备、嵌入式系统和服务器端应用。在数据库管理中,删除数据是一项基本操作。SQLite 提供了强大的删除功能,本文将详细介绍 SQLite 的 Delete 语句及其用法。 1.…...
通往自主智能之路:探索自我成长的AI
1. 引言:当前AI范式与自我成长智能的愿景 当前的人工智能领域在很大程度上由大型语言模型(LLM)的卓越能力所定义。这些模型,例如OpenAI的GPT系列和谷歌的BERT,已经展示了前所未有的理解和生成类人文本的能力。LLM通常…...
[自动化] 【八爪鱼】使用八爪鱼实现CSDN文章自动阅读脚本
在CSDN上,文章的阅读量往往是衡量内容影响力的一个重要指标。为了测试自动化手段能否提高阅读数,我尝试使用网页自动化工具来模拟人工阅读某个ID的文章。 1. 网页自动化的常见方案 谈到网页自动化,Selenium 是一个最常见的选择。它可以通过…...
Kafka消息序列化深度革命:构建高性能、高安全的自定义编码体系
一、突破默认序列化的桎梏 1.1 原生序列化器的致命缺陷 Kafka默认提供的StringSerializer/ByteArraySerializer在复杂场景下暴露三大痛点: 类型安全黑洞:字节流缺乏元数据描述,消费端解析如履薄冰版本兼容困境:数据结构变更导致…...
2025年如何避免使用验证码求解器时被IP封禁
引言 2025年,验证码求解器已成为自动化网络抓取和其他在线流程的关键工具。然而,自动化用户面临的一个常见挑战是IP封禁。当网站检测到自动化活动时,通常会阻止发出请求的IP地址,导致验证码挑战无法解决。本文将探讨使用验证码求…...
前端 AI IDE应用优缺点
嗯,用户问了三个前端面试的问题,我需要仔细分析每个问题,并结合提供的搜索结果来给出全面且准确的回答。 第一个问题是关于开发工具Cursor或Vim的Windurf在开发中的占比以及它们的缺点。从搜索结果里看,网页3提到了Trae对标Curso…...
银河麒麟桌面版包管理器(二)
APT包管理器 APT是Debian及其派生系统的包管理器,构建在dpkg之上,以其强大的依赖性处理能力和丰富的软件仓库而闻名。APT具有自动解决依赖关系、提供易于使用的命令行工具(如apt-get、apt-cache等),以及稳定的软件更新…...
Leetcode 3494. Find the Minimum Amount of Time to Brew Potions
Leetcode 3494. Find the Minimum Amount of Time to Brew Potions 1. 解题思路2. 代码实现 题目链接:3494. Find the Minimum Amount of Time to Brew Potions 1. 解题思路 这道题虽说算是搞定了,通过了全部的测试样例,不过还是很暴力的求…...
制作Oracle11g Docker 镜像
基于Linux系统,宿主主机要设置如下环境变量,oracle为64位版本 dockerfile中需要的数据库安装包可从csdn下载内找到 #!/bin/bash # 在宿主机上运行以设置Oracle所需的内核参数 # 这些命令需要root权限cat > /etc/sysctl.d/99-oracle.conf << EO…...
rocky linux下载软件
一、配置国内镜像源加速下载 Rocky Linux 默认使用国外软件源,国内用户可通过替换为阿里云镜像提升下载速度: 备份原配置文件: cp -r /etc/yum.repos.d /etc/yum.repos.d.backup 修改镜像源: sed -e s|^mirrorlist|#mirrorli…...
JVM的组成--运行时数据区
JVM的组成 1、类加载器(ClassLoader) 类加载器负责将字节码文件从文件系统中加载到JVM中,分为:加载、链接(验证、准备、解析)、和初始化三个阶段 2、运行时数据区 运行时数据区包括:程序计数…...
SpringBoot中安全的设置阿里云日志SLS的accessKey
众所周知,阿里云的服务都是基于accesskeyId和accesskeySecret来进行身份鉴权的,但唯独日志因为需要写入到.xml文件里对于accesskeyId和accesskeySecret需要进行一定程度的改进,尤其是使用了jasypt进行加密的参数传递进去logback.xml更是会遇到需要对参数进行解密的问题,而官网只…...
DeepSeek 助力 Vue3 开发:打造丝滑的表格(Table)之添加导出数据功能示例11,TableView15_11带分页的导出表格示例
前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 目录 Deep…...
C++多线程编程:从创建到管理的终极指南
在高性能计算时代,掌握多线程编程是提升程序效率的必修课!本文将手把手教你如何用C++11标准库轻松创建和管理线程,告别单线程的“龟速”,让代码跑出多核CPU的性能! 一、多线程为何重要? 充分利用多核CPU:现代计算机普遍支持多核并行,多线程可让程序性能指数级提升。提升…...
人工智能算法基础
基础算法 排序查找线性结构树散列图堆栈 机器学习算法 定义:数据算法 流程:数据收集与预处理、特征选择、训练和测试模型、模型的评估。 监督学习 定义:是从给定的训练数据集中学习出一个函数,当新的数据到来时,可…...
Normal distribution (正态分布)
Normal distribution {正态分布} 1. Normal distribution (正态分布) Gaussian distribution (高斯分布)1.1. Probability density function (概率密度函数)1.2. Standard normal distribution (标准正态分布)1.3. Cumulative distribution function (累积分布函数) 2. 正态分…...
企业级前端架构设计与实战
一、架构设计核心原则 1.1 模块化分层架构 典型目录结构: src/├── assets/ # 静态资源├── components/ # 通用组件├── pages/ # 页面模块├── services/ # API服务层├── store/ # 全局状态管理├── uti…...
数据模型,数据建模,组件,核心价值,使用,意义
数据模型 一组由符号,文本组成的集合, 用以准确表达信息景观, 达到有效交流,沟通的目的 数据建模 是发现,分析和确定数据需求的过程,是一种称为数据模型的精确形式表示和传递这些需求 数据模型的组件 实体, 关系, 属性和域 数据模型的核心价值 交流性 精确性 数据模型的…...
JavaScript 比较运算符
JavaScript 比较运算符 一、基础比较运算符类型 运算符名称示例核心特性==宽松相等"5" == 5 → true隐式类型转换===严格相等"5" === 5 → false类型+值双重校验!=宽松不等null != 0 → true等效于 !(a == b)!==严格不等5 !== "5" → true类型或…...
AI Agent战国时代:Manus挑战者的破局之道与技术博弈
随着Manus引爆通用型AI Agent的"手脑协同"革命,全球AI Agent赛道进入技术竞速期。Flowith、UI-TARS、LangManus等新势力通过差异化路径重构市场格局,背后折射出开源生态、本土化创新与跨模态交互的深层技术博弈。本文结合行业权威报告与公开技…...