Java:String、StringBuilder、StringJoiner学习笔记
String创建的俩种方式
1.直接赋值
String str = "Hello World!";
当使用直接赋值的方式去创建字符串的时候,虚拟机会去串池里去检查字符串是否存在,如果没有会创建一个然后将地址值赋值给变量;有的话就直接将地址赋值给变量,可以复用,推荐这样写节省内存。记住!!!存储在串池!!!
2.使用new去创建
//常用的构造,其他构造方法可以自己去api文档查看
String str = new String();
String str = new String(char[] arr);//将字符类型数组转换为字符串
String str = new String(byte[] arr);//将字节类型数组转换为字符串
使用new去创建字符串,虚拟机会在堆里开辟一个新的空间,然后将地址值赋值给变量,不推荐空参创建。
字符串的比较
小tips: ==号比的是什么?
分为俩种情况一种是基本数据类型,一种是引用类型
基本数据类型:具体比的是值
引用数据类型: 比的是地址值
进入真题
字符串我们已经知道是引用数据类型,那我们就不能使用==去比较他们的值,除了直接赋值去可以比较他们的地址值,因为串池里的字符串是可以复用的。
字符串的比较主要有俩种方式:
boolean equals(); //区分大小写
boolean equalsIgnoreCase() //不区分大小写
常用方法
常用方法主要有俩种,一种是截取,一种是替换:
Sting substring(开始索引, 结束索引); //截取字符串,包头不包尾,取不到结束索引
String replace(旧值,要替换的值); //旧值都替换成要替换的值
StringBuilder跟StringJoiner
它们都可以看成一个容器,创建之后里面的内容是可变的。
StringBuilder主要作用是提高字符串的操作效率
StingJoiner主要作用是提升拼接字符串的效率
StringBuilder的常用方法
public StringBuilder append(任意类型); //添加数据返回对象本身
public StringBuilder reverse() //反转容器中的内容
public int length() //返回长度(字符出现的个数)
public String toString() //实现在StringBuilder转成String
StringJoiner的构造方法
new StringJoiner("间隔符号");
new StringJoiner(间隔符号,开始符号,结束符号);
StringJoiner的常用方法
add(); //添加元素到容器
length(); //返回字符的个数
toString(); //转成字符串
附上例题
1. 键盘录入一个字符串 要求长度小于9 只能是数字转换为阿拉伯数字
2. 旋转比较俩个字符串是否会相等
3. 键盘输入任意字符串,打乱里面的内容
4. 生成验证码
5. 由键盘录入一个字符串,统计字符串中英文字母和数字分别有多少个
6. 判断一个字符串是否是对称的字符串
7. 检验身份证
8. int数组转换为字符串
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App