Java常用API:StringBuilder、StringBuffer、StringJoiner

StringBuilder的几个常用的API

java 复制代码
StringBuilder s =new StringBuilder("111");//111
//1.拼接内容
s.append(12);
s.append("11");
s.append(true);

//2.支持链式编程
s.append(12).append("11").append(true);//输出是1211true
//3.反转操作
s.reverse();//反转后输出是 eurt1121

使用StringBuilder的好处,如果用String的话当这个循环足够大时,此时需要等待的时间也会很长。但是用StringBuilder此时就会很快速的得到结果。

StringBuffer与StringBuilder的区别

如果多用户共同使用这个StringBuilder时是不安全。

例子:设计一个方法,用于返回任意整型数组的内容,要求返回的数组内容格式如:[11,22,33]

java 复制代码
public static String getArrayData(int[] arr){
//1、判断arr是否为null
if(arr == null){
return null;
}
// 2、arr数组对象存在。arr = [11,22,33]
StringBuilder sb = new StringBuilder();
sb.append("[");
for (int i = 0; i < arr.length; i++){
if(i == arr.length - 1){
sb.append(arr[i]);}
else {
sb.append(arr[i]).append(",");
}
}
sb.append(" ]");
return sb.toString();

StringJoiner



此时上面的案例就会更加简单了

因为这个是字符串类型的,所有遍历后 要+"" 改成字符串类型。最后要用s.toString()变成字符串

相关推荐
小雅痞21 分钟前
[Java][Leetcode middle] 167. 两数之和 II - 输入有序数组
java·算法·leetcode
傻啦嘿哟22 分钟前
如何在 Python 中使用 colorama 库来给输出添加颜色
开发语言·python
CN-Dust25 分钟前
【C++】输入cin例题专题
java·c++·算法
xin_nai1 小时前
LeetCode热题100(Java)(6)矩阵
java·leetcode·矩阵
geovindu1 小时前
go: Visitor Pattern
开发语言·设计模式·golang·访问者模式
宣宣猪的小花园.1 小时前
C语言重难点全解析:内存管理到位运算
c语言·开发语言·单片机
方安乐5 小时前
python之向量、向量和、向量点积
开发语言·python·numpy
代码AI弗森7 小时前
一文理清楚“算力申请 / 成本测算 / 并发评估”
java·服务器·数据库
Old Uncle Tom7 小时前
OpenClaw 记忆系统 -- 记忆预加载
java·数据结构·算法·agent
小小小米粒7 小时前
Collection单列集合、Map(Key - Value)双列集合,多继承实现。
java·开发语言·windows