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()变成字符串

相关推荐
qq_4017004113 分钟前
Qt容器性能优化:QVector、QHash、QMap到底应该怎么选?
开发语言·qt·性能优化
YDS82916 分钟前
大营销平台 —— 活动SKU库存扣减业务及其一致性处理
java·spring boot·redis·rabbitmq·ddd
星栈独行17 分钟前
Node 接口该写同步还是异步?
服务器·开发语言·后端·程序人生·node.js
减瓦24 分钟前
源码视图技术:集 APT 和 AST 所长
java·project lombok
这就是佬们吗25 分钟前
Python入门③-运算符、条件与循环
开发语言·数据库·vscode·python·pycharm·编辑器
wending-Y28 分钟前
Flink 滑动窗口作业 TaskManager RocksDB 状态膨胀 Bug 分析
java·前端·数据库
小刘学技术29 分钟前
AI人工智能中的类别不平衡问题:成因、影响与解决方案
开发语言·人工智能·python·机器学习
兰令水35 分钟前
hot100【acm版】【2026.7.21打卡-java版本】
java·开发语言·算法·leetcode·面试
IT_Octopus36 分钟前
一次由 RestTemplate 引发的 Connection reset:被 XML 截胡的请求体
xml·java·spring boot