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

String类

一、可变长字符串( java.lang 包)

类名 版本 线程安全 执行效率 核心特点

String - 安全 低 不可变字符串,拼接时产生新对象

StringBuffer JDK1.0 安全 中 可变字符串,同步方法保证线程安全

StringBuilder JDK5.0 不安全 高 可变字符串,无同步开销,单线程推荐

核心方法:

StringBuilder append(String str) :字符串拼接,效率远高于 String 的 + 拼音

二、 BigDecimal 类( java.math 包)

1. 作用:解决浮点数( float / double )运算的精度丢失问题,实现精确的小数表示与计算。

​2. 构造方法:

​推荐使用 public BigDecimal(String n) :通过字符串传入数值,避免浮点数本身的精度问题。

​3. 核心运算方法(均返回新的 BigDecimal 对象,原对象不变):

​加法: add(BigDecimal val)

​ 减法: subtract(BigDecimal val)

​乘法: multiply(BigDecimal val)

​除法: divide(BigDecimal val, int scale, int roundingMode)

​ scale :保留小数位数

​roundingMode :取舍模式(如 BigDecimal.ROUND_HALF_UP 表示四舍五入)

三、 String 类核心考点

1. 创建方式:

​ 直接赋值( String s1 = "hello" ):对象在字符串常量池生成,复用已有对象。

​ new 关键字( String s2 = new String("world") ):生成两个对象(堆中对象 + 常量池对象)。

​2. 常用方法:

​charAt(int index) :获取指定索引字符(注意下标越界异常)。

​ contains(String str) :判断是否包含子串。

​ equals(String str) :比较字符串内容(开发中必须用此方法,而非 == )。

​ length() :获取字符串长度(与数组 length 属性区分)。

​trim() :去除首尾空格,常用于数据清洗(如解析用户输入)。

​split(String str) :按指定规则拆分字符串,返回字符串数组。

​3. 不可变性: String 对象一旦创建,内容无法修改,拼接/替换等操作会生成新对象,这是其效率低的根本原因。

http://www.cnnetsun.cn/news/104673.html

相关文章:

  • BiliPlus进阶指南:解锁B站深度体验的全新方式
  • 37、Linux 网络服务管理全解析
  • 非晶磁芯:国产化“市占率”突围战背后的中国力量|深圳金鑫磁材
  • 荒原之梦考研数学:考研报名人数连续两年下降,还要考研吗?
  • 32、深入了解 Linux 系统安全防护
  • 3分钟学会李跳跳自定义规则:彻底告别手机弹窗的终极指南
  • 免费API合集:为您的项目打开无限可能
  • Vercel AI SDK与Docker集成避坑指南:那些官方文档不会告诉你的秘密
  • 为什么现在应届大学生都热衷从事IT互联网行业?
  • Vue + Element UI :从零开发号码标记查询系统
  • Minecraft Bedrock启动器终极配置指南:从新手到高手的完整解决方案
  • 前端数据安全保护方案:从水印技术到全方位防护体系
  • Docker MCP 网关插件开发指南(90%开发者忽略的核心原理)
  • FastReport开源版:快速构建.NET报表系统的完整指南
  • HeidiSQL数据库管理工具:从零开始的完整安装与使用指南
  • MATLAB与XFoil翼型分析:终极集成指南
  • EmotiVoice语音合成在新闻播报自动化中的效率提升
  • 浏览器原生Python编程革命:JupyterLite深度解析与应用指南
  • Vue Query Builder 终极指南:快速构建可视化查询界面
  • 从零构建高可用Agent服务:Docker备份恢复的7步黄金流程
  • 网站域名没有被百度收录
  • echarts给饼图以及折线图悬浮提示框添加单位
  • 从文本到情感语音:EmotiVoice如何重塑语音合成新标准?
  • GEO对决传统SEO:AI搜索时代,品牌如何赢得“心智推荐”
  • 【专家级排错手册】:基于Docker Compose的Agent服务日志采集失败的7种场景与应对方案
  • 极简主义知识管理新体验:Obsidian Minimal主题完全使用指南
  • 如何在gem5-gpu上实现全系统仿真模式 full-system mode
  • 兼容为基,革新为核 —— 金仓数据库重塑企业数据库运维新体验
  • YOLOv12架构革命:通过UniRepLynne主干网络实现特征提取能力的代际飞跃**
  • NewGAN-Manager终极指南:足球经理头像配置一键生成