当前位置: 首页 > news >正文

Java——API基础(String类和StringBuilder类)

一、API概述

API:应用程序编程接口(是一些包含了属性和方法的类)

Java API:指的就是JDK中提供各种功能的Java类

二、String类(在lang包下,不需要导包)

(一)概述

1.Java程序中,所有的双引号字符串,都是String这个类的对象

2.字符串是常量,它们的值在创建之后不能更改(平时对已有初始值的变量重新赋值,起的是替换的作用,而并非是修改)

3.String这个类在打印其对象名的时候,不会出现内存地址,而是该对象所记录的真实内容(与继承和Object类有关) 

(二)String常见构造方法

1.public String()——创建一个空白字符串对象,不含有任何内容

public class text2 {public static void main(String[] args) {String s1 = new String();System.out.println(s1);}
}
//结果
//

2.public String(char[] chs)——根据字符数组的内容,来创建字符串对象

public class text2 {public static void main(String[] args) {char[] chs = {'a','b','c'};String s1 = new String(chs);System.out.println(s1);}
}
//结果
//abc

3.public String(String original)——根据传入的字符串内容,来创建字符串对象

public class text2 {public static void main(String[] args) {String s1 = new String("abei2");System.out.println(s1);}
}
//结果
//abei2

4.String s = "abc" ;——直接赋值的方式创建字符串对象,内容就是abc

(三)创建字符串对象的区别对比

1.以""方式给出的字符串,只要字符序列相同(顺序和大小写),无论在程序代码中出现几次,JVM都只会建立一个String对象,并在字符串常量池中维护

!!!字符串常量池:当使用双引号创建字符串对象的时候,系统会检查该字符串是否在字符串常量池中存在(不存在——创建;存在——不会重新创建,而是直接复用{即地址一样})

public class text2 {public static void main(String[] args) {String a = "aaa";String b = "aaa";System.out.println(a==b);}
}
//结果
//true

 2.通过new创建的字符串对象,每一次new都会在堆内存申请一个内存空间,虽然内容相同,但是地址值不同

public class text2 {public static void main(String[] args) {char[] chs = {'a','b','c'};String a = new String(chs);String b = new String(chs);System.out.println(a==b);}
}
//结果
//false

(三)字符串拼接对比

1. 当变量与直接用引号生成的字符串拼接时

public class text2 {public static void main(String[] args) {String s1 = "abc";String s2 = "ab";String s3 = s2+"c";System.out.println(s1==s3);}
}
//结果
//false

①系统底层会自动创建一个StringBuilder对象(在堆内存中地址值1),然后再调用其append 方法完成拼接

②拼接后,再调用其toString方法转换为String类型(在堆内存中地址值2

2.当引号生成的字符串之间拼接

public class text2 {public static void main(String[] args) {String s1 = "abc";String s2 = "a"+"b"+"c";System.out.println(s1==s2);}
}
//结果
//true

①java存在常量优化机制,在编译的时候,就会将“a”+“b”+“c”拼接为“abc”(在常量池中的内存地址

(四)字符串比较值是否相同

1.equals()

①格式

boolean 变量名 = 字符串1 . equals (字符串2) ;

(返回布尔类型)

②举例
public class text2 {public static void main(String[] args) {String s1 = "abc";String s2 = "ABc";boolean ans = s1.equals(s2);System.out.println(ans);}
}
//结果
//false

2. equalsIgnoreCase()——忽略大小写

①格式

boolean 变量名 = 字符串1 . equalsIgnoreCase (字符串2);

②举例
public class text2 {public static void main(String[] args) {String s1 = "abc";String s2 = "ABc";boolean ans = s1.equalsIgnoreCase(s2);System.out.println(ans);}
}
//结果
//true

(五)遍历字符串

1.利用chatAt()方法逐一遍历

 ①格式

char 变量名 = 字符串名 . charAt (索引);

②举例
public class text2 {public static void main(String[] args) {String s1 = "abc";for (int i = 0; i < s1.length(); i++) {char ans= s1.charAt(i);System.out.println(ans);}}
}
//结果
//a
//b
//c

2. 利用public char [ ] toCharArray ( )将当前字符串拆分为字符数组并返回

①格式

char[ ] 数组名 = 字符串名 . toCharArray();

②举例
public class text2 {public static void main(String[] args) {String s1 = "abc";char[] a = s1.toCharArray();for (int i = 0; i < a.length; i++) {System.out.println(a[i]);}}
}
//结果
//a
//b
//c

(六)判断单字符是大写字母、小写字母还是数字

1.直接判断

①格式

大写字母:'A'<=单字符变量<='Z'

小写字母:'a'<=单字符变量<='z'

数字:'0'<=单字符变量<='9'

②举例
public class text2 {public static void main(String[] args) {String s1 = "aB99";char[] a = s1.toCharArray();for (int i = 0; i < a.length; i++) {char c = a[i];if (c <='Z' && c>='A') {System.out.println(c+"是大写字母");} else if (c<='z' && c>='a') {System.out.println(c+"是小写字母");} else if (c<='9' && c>='0') {System.out.println(c+"是数字");}}}
}
//结果
//a是小写字母
//B是大写字母
//9是数字
//9是数字

(七)字符串截取

 1.String substring ( int beginIndex ) 

①格式

String 变量名 = 字符串名 . substring ( 索引 ) ;

注意从传入的索引位置处,向后截取,一直截取到末尾,得到新的字符串并返回

②举例
public class text2 {public static void main(String[] args) {String s1 = "aB99";String s2 = s1.substring(2);System.out.println(s2);}
}
//结果
//99

2.String substring (int beginIndex , int endIndex )

①格式

String 变量名 = 字符串名 . substring ( 开始索引,结束索引);

注意从beginIndex索引位置开始截取,截取到endIndex索引位置,得到新字符串并返回(包含头不包含尾

 ②举例
public class text2 {public static void main(String[] args) {String s1 = "aB99";String s2 = s1.substring(1,3);System.out.println(s2);}
}
//结果
//B9

(八)替换值

1.String replace ( CharSequence targer , CharSequence replacement ) 

①格式

String 变量名 = 字符串名 . replace(被替换的旧值 ,替换的新值);

注意:将当前字符串中的target(被替换的旧值)使用replacement(替换的新值)进行替换,返回新的字符串。

②举例
public class text2 {public static void main(String[] args) {String s1 = "aB99666397";String s2 = s1.replace("666","***");System.out.println(s2);}
}
//结果
//aB99***397

(九)切割字符串

1.String [ ] split ( String regex )

①格式

String[ ] 变量名 = 字符串名 . split ("符号");

注意:根据传入的字符串作为规则进行切割,将切割后的内容存入字符串数组中,并将字符串数组返回

②举例  
public class text2 {public static void main(String[] args) {String s1 = "aB//996,66,397";String [] arr = s1.split(",");for (int i = 0; i < arr.length; i++) {System.out.print(arr[i]);}}
}
//结果
//aB//99666397

三、StringBuilder类(在lang包下,不需要导包)

(一)概述

是一个可变的字符串类,我们可以把它看成是一个容器,可以提高字符串的操作效率。 

(二)StringBuilder类常用的构造方法

1.public  StringBuilder()——创建一个空白可变字符串对象,不含有任何内容

public class text2 {public static void main(String[] args) {StringBuilder sb = new StringBuilder();System.out.println(sb);}
}
//结果
//#空行

2.public StringBuilder(String str)——根据字符串的内容,来创建可变字符串对象

public class text2 {public static void main(String[] args) {StringBuilder sb = new StringBuilder("weknh");System.out.println(sb);}
}
//结果
//weknh

(三)StringBuilder类常用方法

1.public StringBuilder append (任意类型)——添加任意数据类型数据,将其转为字符串类型,并返回对象本身(无论赋值给多少个变量,都统一指向一个内存地址)

①格式

StringBuilder 变量名1 = new StringBuilder();

变量名 . append ( 任意类型 );

②举例
public class text2 {public static void main(String[] args) {StringBuilder sb = new StringBuilder();StringBuilder sb1 = sb.append(666);StringBuilder sb2 = sb.append("hello");sb.append(true);
//        sb、sb1、sb2均指向同一个内存地址,所以打印出来的值相同System.out.println(sb);System.out.println(sb1);System.out.println(sb2);}
}
//结果
//666hellotrue
//666hellotrue
//666hellotrue
③注意

!!!链式编程:如果一个方法返回的是对象类型,对象就可以继续向下调用方法。

格式

变量名1 . append ( 任意类型 ) . append ( 任意类型 ) . append()...#多次调用append方法

举例

public class text2 {public static void main(String[] args) {StringBuilder sb = new StringBuilder();
//        因为StringBuilder类的append方法返回的是对象类型sb.append(8888).append("hello").append(false);System.out.println(sb);}
}
//结果
//8888hellofalse

2.public StringBuilder reverse()——返回相反的字符串序列

①格式

变量名1 . reverse ( );

②举例
public class text2 {public static void main(String[] args) {StringBuilder sb = new StringBuilder();
//        因为StringBuilder类的reverse方法返回的是对象类型sb.append(8888).append("hello").append(false);sb.reverse().append("yes");System.out.println(sb);}
}
//结果
//eslafolleh8888yes
③注意

!!!同样可以使用链式编程。 

3.public int length()——返回长度(字符出现的个数)

①格式

变量名1 . length() ;

②举例
public class text2 {public static void main(String[] args) {StringBuilder sb = new StringBuilder();sb.append(8888).append("hello").append(false);sb.reverse().append("yes");System.out.println(sb.length());}
}
//结果
//17

4.public String toString()——通过toString就可以实现把StringBuilder转换为String 

①格式

String 变量名2 = 变量名1 . toString ( ) ;

②举例
public class text2 {public static void main(String[] args) {StringBuilder sb = new StringBuilder();sb.append(8888).append("hello").append(false);sb.reverse().append("yes");String s = sb.toString();System.out.println(s);}
}
//结果
//eslafolleh8888yes

四、String类与StringBuilder类的区别

1.String类:内容是不可变的

2.StringBuilder类:内容是可变的 

相关文章:

Java——API基础(String类和StringBuilder类)

一、API概述 API&#xff1a;应用程序编程接口&#xff08;是一些包含了属性和方法的类&#xff09; Java API&#xff1a;指的就是JDK中提供各种功能的Java类 二、String类&#xff08;在lang包下&#xff0c;不需要导包&#xff09; &#xff08;一&#xff09;概述 1.J…...

OpenCV图像金字塔详解:原理、实现与应用

一、什么是图像金字塔&#xff1f; 图像金字塔是图像处理中一种重要的多尺度表示方法&#xff0c;它通过对图像进行重复的平滑和降采样&#xff08;或上采样&#xff09;操作&#xff0c;生成一系列分辨率逐渐降低&#xff08;或升高&#xff09;的图像集合。这种结构形似金字…...

AI Agent(11):垂直行业应用

引言 本文将聚焦AI Agent在金融、医疗健康、制造业以及零售与电商四个重要垂直行业的应用。我们将分析每个行业的特定需求和挑战,探讨AI Agent如何通过专业化能力为这些行业创造价值,并展望未来发展趋势。 垂直行业AI Agent的核心价值在于将通用AI能力与行业专业知识深度结…...

FFmpeg 项目中的三大核心工具详解

FFmpeg 项目中的三大核心工具详解 FFmpeg 是一个功能强大的开源多媒体框架,能够处理几乎所有格式的音视频文件。它包含三个主要的命令行工具:ffmpeg、ffplay 和 ffprobe,这三个工具各自承担不同的功能,共同构成了 FFmpeg 项目的核心。下面将全面详细地介绍这三个工具。 1…...

【Linux网络】 HTTP cookie与session

HTTP cookie与session 引入HTTP Cookie 定义 HTTP Cookie&#xff08;也称为Web Cookie、浏览器Cookie或简称Cookie&#xff09;是服务器发送到用户浏览器并保存在浏览器上的一小块数据&#xff0c;它会在浏览器之后向同一服务器再次发起请求时被携带并发送到服务器上。通常&…...

STM32入门教程——GPIO输出

前言 本教材基于B站江协科技课程整理&#xff0c;适合有C语言基础、刚接触STM32的新手。它梳理了STM32核心知识点&#xff0c;帮助大家把C语言知识应用到STM32开发中&#xff0c;更高效地开启STM32学习之旅。 目录 前言 1.知识储备 1.GPIO简介 2.GPIO基本结构 1.APB2外设…...

MongoDB使用x.509证书认证

文章目录 自定义证书生成CA证书生成服务器之间的证书生成集群证书生成用户证书 MongoDB配置java使用x.509证书连接MongoDBMongoShell使用证书连接 8.0版本的mongodb开启复制集&#xff0c;配置证书认证 自定义证书 生成CA证书 生成ca私钥&#xff1a; openssl genrsa -out ca…...

FEKO许可证的安全与合规性

在电磁仿真领域&#xff0c;FEKO软件因其出类拔萃的性能和广泛的应用场景&#xff0c;赢得了全球用户的广泛赞誉。但在这背后&#xff0c;是什么让FEKO在众多竞争者中脱颖而出&#xff1f;答案是其许可证的安全与合规性。它们不仅为用户提供了坚固的保障&#xff0c;更确保了用…...

AI大模型学习二十、利用Dify+deepseekR1 使用知识库搭建初中英语学习智能客服机器人

一、说明 很多情况下 LLM 知识库可以让 Agent 从中定位到准确的信息&#xff0c;从而准确地回答问题。在一些特定领域&#xff0c;比如客服、检索工具等有应用。 传统的客服机器人往往是基于关键词检索的&#xff0c;当用户输入了关键词以外的问题&#xff0c;机器人就无法解决…...

kubuntu系统详解

Kubuntu 系统深度解析&#xff08;从系统架构到用户体验&#xff09; 一、定位与核心特性 Kubuntu 是 Ubuntu 的官方 KDE 衍生版&#xff0c;基于 Ubuntu 的稳定底层&#xff08;Debian 技术栈&#xff09;&#xff0c;搭载 KDE Plasma 桌面环境&#xff0c;主打 “功能丰富、…...

【AutoGen革命】多智能体协作系统的架构设计与工程实践

目录 &#x1f30d; 前言&#x1f3d7;️ 技术背景与价值&#x1f6a8; 当前技术痛点&#x1f6e0;️ 解决方案全景&#x1f465; 目标读者画像 &#x1f9e0; 一、技术原理剖析&#x1f5bc;️ 系统架构图解&#x1f4a1; 核心运行机制⚙️ 关键技术组件&#x1f504; 技术选型…...

西电 | 2025年拟录取研究生个人档案录取通知书邮寄通知

各位考生&#xff1a; 我校2025年硕士研究生录取工作已结束&#xff0c;根据相关工作管理规定&#xff0c;现将个人档案转调及录取通知书邮寄信息确认等有关事宜通知如下&#xff1a; 一、个人档案转调 &#xff08;邮寄档案请务必使用EMS&#xff09; 1.全日制考生 录取类…...

9.0 C# 调用solidworks介绍1

一、C# 与 SolidWorks 联合开发概述 SolidWorks 提供了完整的 API(应用程序接口),允许开发者使用 C# 等编程语言进行二次开发,实现自动化设计、定制功能等。 主要技术要点包括: 1. API 结构:SolidWorks API 是基于 COM 的接口,包含数百个对象和数千个方法…...

Linux复习笔记(三) 网络服务配置(web)

遇到的问题&#xff0c;都有解决方案&#xff0c;希望我的博客能为你提供一点帮助。 二、网络服务配置 2.3 web服务配置 2.3.1通信基础&#xff1a;HTTP协议与C/S架构&#xff08;了解&#xff09; ​​HTTP协议的核心作用​​ Web服务基于HTTP/HTTPS协议实现客户端&#xff…...

git和gdb

git基础使用 相关概念 本地仓库&#xff1a;自己电脑上git客户端 远端仓库&#xff1a;管理员端的git服务端 多人协作&#xff1a;文件开源&#xff0c;可以多个人一起修改 前提 1.一个仓库 2.确认git有没有安装 3.把远端仓库clone 这一步执行完后我们执行ll可以看到&…...

CSRF记录

CSRF&#xff08;Cross-site request forgery&#xff09;跨站请求伪造&#xff1a;攻击者诱导受害者进入第三方网站&#xff0c;在第三方网站中&#xff0c;向被攻击网站发送跨站请求。利用受害者在被攻击网站已经获取的注册凭证&#xff0c;绕过后台的用户验证&#xff0c;达…...

嵌入式MCU和Linux开发哪个好?

MCU与Linux&#xff1a;十年磨剑后的选择之道 MCU和Linux到底怎么选&#xff1f;这是一个老生畅谈的问题。 而我更想说&#xff0c;这不是简单的优劣对比&#xff0c;而是两条不同的道路&#xff0c;通往不同的风景。今天&#xff0c;我想以一个老兵的视角&#xff0c;聊聊这…...

2024年北理工Python123第六章编程题整理

这章的编程题都好少&#xff0c;难度也不高 开始进入文件的输入输出 一、字典翻转输出 我的代码&#xff1a; ori_dic eval(input()) dic{} if(not isinstance(ori_dic,dict)):#验证输入格式print(输入错误) else:for item in ori_dic.keys():dic[ori_dic.get(item)]itempri…...

一、HAL库的设计理念详解:从架构到实践

HAL库的设计理念详解&#xff1a;从架构到实践 一、HAL库的诞生背景与核心目标 STM32 HAL库&#xff08;Hardware Abstraction Layer&#xff09;是STMicroelectronics在2016年推出的新一代驱动框架&#xff0c;旨在解决STM32系列芯片不断扩展带来的开发复杂性问题。随着STM3…...

【Python】UV:单脚本依赖管理

一、基础概念 什么是 Python 脚本 以 .py 结尾的文件&#xff0c;可通过 python script.py 独立执行。UV 工具优势&#xff1a;无需手动创建或激活虚拟环境&#xff0c;自动为每个脚本生成隔离环境&#xff0c;保证依赖互不干扰。 环境管理原理 graph LRA[系统 Python 环境] -…...

多线程(2)——Thread类及常见方法

目录 构造方法常见属性前台线程&#xff0c;后台线程 启动一个线程——start()中断&#xff08;终止&#xff09;一个线程方法1&#xff1a;通过变量方法2&#xff1a;使用 isInterrupted() ---线程内置的标志位 等待一个线程——join()join设置等待时间 获取当前线程引用---cu…...

Neo4j 入门级使用

一、集成步骤 &#xff08;一&#xff09;创建 Spring Boot 项目 使用 Spring Initializr 创建项目时&#xff0c;选择 Maven 或 Gradle 作为项目构建工具&#xff0c;选择合适的 Spring Boot 版本&#xff0c;并添加 “Spring Data Neo4j” 依赖。 &#xff08;二&#xff…...

解决 CJSON 浮点数精度问题:从 `cJSON_AddNumberToObject` 到 `cJSON_AddRawToObject`

在使用 CJSON 库处理浮点数时&#xff0c;开发者常会遇到一个棘手问题&#xff1a;浮点数的小数位精度丢失。例如&#xff0c;数值 3.1400 可能被简化为 3.14&#xff0c;甚至 5.0 被显示为 5。这种默认行为在需要严格保留小数位的场景&#xff08;如金融、物联网传感数据&…...

ESP32开发入门(九):HTTP服务器开发实践

一、HTTP服务器基础 1.1 什么是HTTP服务器&#xff1f; HTTP服务器是能够处理HTTP请求并返回响应的网络服务程序。在物联网应用中&#xff0c;ESP32可以作为轻量级HTTP服务器&#xff0c;直接接收来自客户端(如浏览器、手机APP)的请求。 1.2 ESP32作为HTTP服务器的特点 轻量…...

谱聚类,大模型

使用谱聚类将相似度矩阵分为2类的步骤如下&#xff1a; 1. **构建相似度矩阵**&#xff1a;提供的1717矩阵已满足对称性且对角线为1。 2. **计算度矩阵**&#xff1a;对每一行求和得到各节点的度&#xff0c;形成对角矩阵。 3. **计算归一化拉普拉斯矩阵**&#xff1a;采用对…...

K8S Ingress、IngressController 快速开始

假设有如下三个节点的 K8S 集群&#xff1a; ​ k8s31master 是控制节点 k8s31node1、k8s31node2 是工作节点 容器运行时是 containerd 一、理论介绍 1&#xff09;什么是 Ingress 定义&#xff1a;Ingress 是 Kubernetes 中的一种资源对象&#xff0c;它定义了外部访问集群内…...

AI边缘网关_5G/4G边缘计算网关厂家_计讯物联

AI边缘网关是边缘计算与人工智能技术深度融合的产物&#xff0c;作为连接终端设备与云端的桥梁&#xff0c;在网络边缘实现数据采集、实时分析、智能决策和协议转换&#xff0c;显著降低了数据传输延迟&#xff0c;节省了云端资源&#xff0c;并提升了隐私保护能力&#xff0c;…...

【Vue】Composables 和 Utils 区别

1. 核心功能与状态管理 • Composables 用于封装有状态的逻辑&#xff0c;通常结合 Vue 的响应式 API&#xff08;如 ref、reactive&#xff09;和生命周期钩子&#xff08;如 onMounted&#xff09;&#xff0c;可管理组件内部的状态和副作用。例如&#xff0c;封装鼠标位置…...

右值和移动

值类别(value categories) lvalue 通常可以放在等号左边的表达式, 左值 例子 变量&#xff0c;函数或数据成员的名字返回左值引用的表达式&#xff0c;如x, x 1, cout << ’ . x 1 和 x返回的都是对x的int&. x则返回的是int字符串字面量如 “hello world” rva…...

如何在 Bash 中使用 =~ 操作符 ?

在 Bash 脚本世界中&#xff0c;有各种操作符可供我们使用&#xff0c;使我们能够操作、比较和测试数据。其中一个操作符是 ~ 操作符。这个操作符经常被忽视&#xff0c;但功能非常强大&#xff0c;它为我们提供了一种使用正则表达式匹配字符串模式的方法。 ~ 操作符语法 语法…...

消息队列RocketMQ-docker部署保姆级教程(从0到1)(2)

目录 引言 1. 准备工作 1.1 准备虚拟机 1.2 将虚拟机的ip设置为静态ip地址 1.3 什么是nat网络 1.4 测试网络 2. 准备docker环境 2.1 卸载旧docker&#xff08;如果有&#xff09; 2.2 安装依赖包 2.3 添加 Docker 官方仓库&#xff08;国内推荐使用阿里云镜像&#xf…...

《算法导论(第4版)》阅读笔记:p32-p38

《算法导论(第4版)》学习第 12 天&#xff0c;p32-p38 总结&#xff0c;总计 7 页。 一、技术总结 1.analyzing algorithms (1)running time(运行时间) worst-case running time, average-case running time&#xff0c;best-case running-time。 2.order of growth/rate …...

《Effective Python》第1章 Pythonic 思维详解——深入理解流程控制中的解构利器match

《Effective Python》第1章 Pythonic 思维详解——深入理解流程控制中的解构利器match 引言 Python 3.10 引入了全新的 match 语句&#xff0c;它不仅是一个“类 switch”的语法结构&#xff0c;更是一种**结构化模式匹配&#xff08;structural pattern matching&#xff09…...

【氮化镓】横向GaN 器件注入隔离区的电场相关载流子传输特性

文章的关键结论和发现如下: 在GaN横向功率器件中,注入隔离区的载流子传输具有明显的电场依赖性,且其泄漏电流和击穿特性主要由注入的GaN区域决定,与缓冲层和UID GaN层的性质关系不大。 载流子传输机制随电场强度变化呈现三个不同区域:低电场下为欧姆传导,符合变程跃迁(V…...

电子电器架构 --- 借力第五代架构,驱动汽车产业创新引擎

我是穿拖鞋的汉子&#xff0c;魔都中坚持长期主义的汽车电子工程师。 老规矩&#xff0c;分享一段喜欢的文字&#xff0c;避免自己成为高知识低文化的工程师&#xff1a; 钝感力的“钝”&#xff0c;不是木讷、迟钝&#xff0c;而是直面困境的韧劲和耐力&#xff0c;是面对外界…...

【ROS2】通信部署概述(以话题(Topic)通信为例)

写在前面 很多内容参考了赵虚左老师的ROS2教程 概念说明 工作空间&#xff1a;相当于一个项目&#xff0c;比如一台机械臂&#xff0c;或者一个机器人 功能包&#xff1a;相当于一个项目中的一台设备&#xff0c;如电机、雷达、相机等 大概构建流程 以话题通信机制为例 创…...

1.8 梯度

&#xff08;知识体系演进逻辑树&#xff09; 一元导数&#xff08;1.5&#xff09; │ ├─→ 多元偏导数&#xff08;1.6核心突破&#xff09; │ │ │ └─解决&#xff1a;多变量耦合时的单变量影响分析 │ │ │ ├─几何&#xff1a;坐标轴切片切线斜率…...

Pycharm中No Conda enviroment selected

最近在学习Anaconda&#xff0c;换了台新电脑重新安装PyCharm和Anaconda后&#xff0c;打算创建环境&#xff0c;创建后发现找不到刚刚在Anaconda中创建的环境&#xff0c;经过不断摸索后找到解决方案 将选择的路径从Anaconda目录下的python.exe换成Anaconda\Library\bin下的c…...

continue通过我们的开源 IDE 扩展和模型、规则、提示、文档和其他构建块中心,创建、共享和使用自定义 AI 代码助手

​一、软件介绍 文末提供程序和源码下载 Continue 使开发人员能够通过我们的开源 VS Code 和 JetBrains 扩展以及模型、规则、提示、文档和其他构建块的中心创建、共享和使用自定义 AI 代码助手。 二、功能 Chat 聊天 Chat makes it easy to ask for help from an LLM without…...

关于读写锁的一些理解

同一线程的两种情况&#xff1a; 读读&#xff1a; public static void main(String[] args) throws InterruptedException {ReentrantReadWriteLock lock new ReentrantReadWriteLock();Lock readLock lock.readLock();Lock writeLock lock.writeLock();readLock.lock();S…...

Ubuntu网络部署LNMP环境

目录 1. 安装nginx 2. 安装mysql 3. 安装PHP 4. 配置nginx&#xff0c;修改默认配置文件 5. 配置PHP 1. 安装nginx apt install -y nginx#开启 systemctl start nginx#浏览器访问页面 192.168.180.200:80#nginx网页html存放路径 ls /usr/share/nginx/#查看nginx版本号 ng…...

榜单按行显示

手机芯片_SoC天梯榜_安兔兔跑分排行_安兔兔 我只关注 骁龙7Gen1&#xff0c;天玑7300&#xff0c;骁龙6Gen1&#xff0c;天玑900 除了 50,64,75,86 行都隐藏。 var uls document.getElementsByClassName(newrank-c); var s 50,64,75,86; var sa s.split(,); for (var i0…...

DVWA在线靶场-xss部分

目录 1. xxs&#xff08;dom&#xff09; 1.1 low 1.2 medium 1.3 high 1.4 impossible 2. xss&#xff08;reflected&#xff09; 反射型 2.1 low 2.2 medium 2.3 high 2.4 impossible 3. xss&#xff08;stored&#xff09;存储型 --留言板 3.1 low 3.2 medium 3.3 high 3.…...

将本地文件上传到云服务器上

使用 SCP 命令&#xff08;最常用&#xff09; # 基本语法 scp [本地文件路径] [用户名][服务器IP]:[目标路径]# 示例&#xff1a;上传单个文件 scp /path/to/local/file.txt root192.168.1.100:/path/to/remote/# 上传整个目录 scp -r /path/to/local/directory root192.168.…...

关系实验课--笛卡尔积

import sympy as sym a, b sym.symbols(a b) # 定义符号 a 和 b A sym.FiniteSet(a,b) # 创建包含 a 和 b 的有限集合 B sym.FiniteSet(1,2,3,4) AxB sym.cartes(A,B) # 返回迭代器。迭代器不会直接显示内容&#xff0c;而是需要手动遍历或转换为其他数据类型&#xff08;如…...

从0开始学习大模型--Day07--大模型的核心知识点

AI常见名词 知识库 分为传统知识库与AI知识库&#xff0c;前者是单纯的存储各个领域的知识&#xff0c;后者则是与LLM结合&#xff0c;使AI系统能够更好地利用本地知识来响应查询和执行任务。比如&#xff0c;假如公司新来了个维修人员&#xff0c;他可以直接调用AI知识库去学…...

无线定位之 二 SX1302 网关源码 thread_down 线程详解

前言 笔者计划通过无线定位系列文章、系统的描述 TDOA 无线定位和混合定位相关技术知识点, 并以实践来验证此定位系统精度。 笔者从实践出发、本篇直接走读无线定位系统关键节点、网关 SX1302 源码框架,并在源码走读过程 中、着重分析与无线定位相关的PPS时间的来龙去脉、并在…...

MINIX 1.0 文件系统的实现(C/C++实现)

MINIX 1.0 文件系统简介&#xff1a; Linux 0.11操作系统启动时需要加载一个根目录&#xff0c;此根目录使用的是MINIX 1.0文件系统&#xff0c;其保存在硬盘的第一个分区中。Linux 0.11操作系统将硬盘上的两个连续的物理扇区&#xff08;大小为512字节&#xff09;做为一个物理…...

Spring Data Elasticsearch 中 ElasticsearchOperations 构建查询条件的详解

Spring Data Elasticsearch 中 ElasticsearchOperations 构建查询条件的详解 前言一、引入依赖二、配置 Elasticsearch三、创建模型类&#xff08;Entity&#xff09;四、使用 ElasticsearchOperations 进行 CRUD 操作1. 保存数据&#xff08;Create&#xff09;2. 获取数据&am…...

keil 解决 Error: CreateProcess failed, Command: ‘XXX\ARM\ARMCC\bin\fromelf.exe

参考文章链接&#xff1a; https://blog.csdn.net/qq_39172792/article/details/145499880 自己的&#xff1a; D:\Program Files\keil529\Keil_v5\ARM\ARMCLANG\bin\fromelf.exe --bin -o …/…/firmware_bin/L.bin ./Object/L.axf...