String和StringBuilder

String类

String类代表字符串。Java程序中的所有字符串文字(例如"abc")都能被实现为此类的实例。

String类源码使用final修饰的,他们的值在创建后不能被更改,字符串缓冲区支持可变字符串。

特点

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

双引号内容相同,地址相同。

StringBuilder类

一个可变的字符串类。把它看成一个容器,可变值指的是StringBuilder对象中的内容是可变的。

String和StringBuilder区别

String的值不可变,StringBuilder的值是可变的。

String每赋予一个值,都会产生一个新的地址;StringBuilder是在原有地址上一直更改的,节省了大量的空间,运行速度也更快。

String和StringBuilder的使用场景

  • String:适用于少量的字符串操作的情况
  • StringBuilder:适用于字符串修改的情况

String常用方法

构造方法:

无参构造:String str = new String();//创建一个null字符串对象

含参构造:String str = new String("code");//创建一个为code的字符串对象

StringBuilder常用方法

无参构造方法:StringBuilder str = new StringBuilder();

相关推荐
huangdong_1 小时前
电商平台图片URL原图转换技术深度解析:从缩略图到高清原图的完整方案
java·后端·spring
記億揺晃着的那天1 小时前
Java 调用外部 Go 程序的实践:ProcessBuilder 在生产环境中的应用
java·golang·processbuilder
JAVA面经实录9171 小时前
Java 数据结构与算法 (终极完整学习文档)
java·数据结构·算法
JAVA面经实录9172 小时前
操作系统面试题
java·服务器·数据库·计算机网络·面试
一杯奶茶¥3 小时前
基于springboot的失物招领管理系统带万字文档 校园失物招领管理系统 失物认领管理系统java springboot vue
java·vue.js·spring boot·java项目
在放️3 小时前
Python 爬虫 · 第三方代理接入与合规使用
开发语言·爬虫·python
不能只会打代码3 小时前
边缘视频分析平台的架构设计与性能优化——从750ms到190ms的调优之路
java·spring boot·redis·性能优化·边缘计算·物联网竞赛
小刘|3 小时前
Spring AI Alibaba 集成和风天气 API 实战
java·服务器·前端
KANGBboy3 小时前
java知识五(继承)
java·开发语言
c++之路3 小时前
Bazel C++ 构建系列文档(三):构建第一个 C++ 项目
开发语言·c++