news 2026/6/6 22:53:52

js--7

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
js--7

一、API 基础

1.定义:API(Application Programming Interface)是预先实现好的功能接口,我们无需重复编写,直接调用即可。

2. Java API:指 JDK 中提供的各类功能类 Random 、 String 、 StringBuilder 、 StringJoiner 等。

二、String 类

1. 核心特性 - 属于 java.lang 包,使用时无需导包。

所有字符串字面量(如 "abc" )本质上都是 String 类的对象。

不可变性:字符串内容在创建后无法修改,任何拼接或修改操作都会生成新的对象。

2.

String name = "abc"; 复用字符串常量池中的对象,效率更高 构造方法

String s = new String(char[] chs); 每次都会在堆内存中创建新对象

3. 常用方法 方法名 作用 equals() 比较字符串内容是否完全相同 equalsIgnoreCase() 忽略大小写比较字符串内容 charAt(int index) 根据索引获取对应字符 length() 获取字符串长度(与数组的 length 属性区分)

4. 典型应用 统计字符串中大写字母、小写字母和数字的个数,是 charAt() 和 length() 方法的经典应用场景。

5. 拼接底层原理 - 无变量参与:编译时直接完成拼接,复用字符串常量池中的对象。 - 有变量参与:每次拼接都会创建新字符串对象,造成内存浪费。

三、StringBuilder 类

1. 核心特性 - 是一个可变的字符串容器,可直接修改内容,避免频繁创建对象,提升性能。

适用于频繁拼接、修改字符串的场景。

2. 构造方法 构造方法 说明 public StringBuilder() 创建一个空的可变字符串对象 public StringBuilder(String str) 根据传入的字符串创建可变对象

3. 常用方法 方法名 作用 append(任意类型) 向容器添加数据,返回对象本身,支持链式调用 reverse() 反转容器中的内容 length() 获取容器中字符的个数 toString() 将 StringBuilder 转换为 String 类型

4. 底层原理

- 效率优势:所有拼接内容都直接放入容器,不会创建大量无用对象,节约内存。

- 扩容机制: - 默认初始容量为 16。

- 扩容规则: 老容量 * 2 + 2 。 - 若计算后的容量仍不足,则直接使用实际所需容量。

四、StringJoiner 类

1. 核心特性 - JDK 8 新增的可变字符串容器,可高效拼接字符串。 - 支持指定分隔符、前缀和后缀,让拼接代码更简洁。

- 在实际开发中使用频率较低,多数场景仍使用 StringBuilder 。

2. 构造方法 构造方法 说明 public StringJoiner(间隔符号) 创建对象,指定拼接时的间隔符号 public StringJoiner(间隔符号, 开始符号, 结束符号) 创建对象,指定间隔符号、开始符号和结束符号

五、 String 不可变 内容安全,复用性高 字符串内容固定的场景

StringBuilder 可变 高效拼接、修改 频繁操作字符串的场景

StringJoiner 可变 支持分隔符、前缀、后缀 需要格式化拼接结果的场景

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/28 21:19:39

2026年中大型企业数电乐企解决方案选型参考:主流方案对比及应用场景适配建议

随着数电发票改革的全面推进,企业财务管理面临向数字化、自动化转型的关键阶段。数电乐企解决方案旨在帮助企业实现发票数据的全流程自动化处理,并与税务系统高效衔接。本文从系统能力、场景适配、实施反馈等维度,对当前市场中的三款数电乐企…

作者头像 李华
网站建设 2026/5/28 19:44:32

安全经理的CISSP备考之路!精进专业技能,成为了我必须坚持的事

作为一家上市公司的网络安全经理,每天都要和行业内专业人士深度对接,也愈发感受到这个领域的发展速度——新工具、新技术持续迭代,行业对从业者的专业要求也在不断提升。想要不被行业淘汰,保持核心竞争力,持续学习、精…

作者头像 李华
网站建设 2026/6/6 12:50:05

【软件测试】11_性能测试实战 _编写性能测试报告

文章目录一、项目概况二、测试目的三、测试范围四、测试环境及工具4.1 性能测试环境的基本配置4.2 测试工具五、测试记录及结果分析5.1 单场景负载测试-获取首页数据5.1.1 场景描述5.1.2 测试结果数据5.1.3 问题分析5.1.4 解决方案六、测试结论七、总结7.1 编写测试报告的要点7…

作者头像 李华
网站建设 2026/5/28 19:44:32

物理世界模型驱动:Franka Research 3 机械臂的“零样本”进化之路

在当前的机器人研究领域,如何让机械臂像人类一样通过“观看”视频就学会复杂的动作,是一个极具挑战性的前沿课题。近期,由 Google DeepMind、斯坦福大学等机构联合提出的 PhysWorld 框架,通过将视频生成与物理世界建模相结合&…

作者头像 李华
网站建设 2026/5/29 22:10:01

基于SpringBoot+协同过滤算法的动漫信息推荐系统的设计与实现

前言 🌞博主介绍:✌CSDN特邀作者、全栈领域优质创作者、10年IT从业经验、码云/掘金/知乎/B站/华为云/阿里云等平台优质作者、专注于Java、小程序/APP、python、大数据等技术领域和毕业项目实战,以及程序定制化开发、文档编写、答疑辅导等。✌…

作者头像 李华
网站建设 2026/6/5 23:40:31

clawdbot (openclaw) + discord 机器人部署指南学习教程

本文介绍了基于 ClawdBot(OpenClaw)框架在 Discord 平台部署 AI 对话机器人的完整流程。内容包括:Discord Application 与 Bot 的创建配置、OAuth2 权限管理、pnpm 全局安装、Daemon 服务配置、多模型 API 接入(支持智谱 GLM 等主…

作者头像 李华