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

相关推荐
程序猿阿森4 分钟前
Python 闭包与装饰器:从入门到精通
开发语言·python·面试
余额瞒着我当琳17 分钟前
C++--vector底层,leetcode118杨辉三角实战,对于传统reserve的坑点,迭代器失效
开发语言·c++
曹牧21 分钟前
C#:字符串做20位截断
开发语言·c#
醉城夜风~39 分钟前
(超详细)C++多态(Polymorphism)
开发语言·c++
这是个栗子42 分钟前
【JS代码分析】前端鉴权基础:Token 的本地存储与状态重置实践
开发语言·前端·javascript
chuan.bai1 小时前
Java RAG 实战附录:qwen3 与 bge-m3 模型切换指南
java·人工智能·算法
wuyk5551 小时前
7.AVL 树:第一个自平衡二叉搜索树
开发语言·stm32·单片机·算法
SL_staff1 小时前
销售知识管理的断点分析与技术解法:从3天找话术到秒级检索
java·开源·github
荣码1 小时前
向量数据库选型:4种方案全测了,选错重来成本最高
java·python
rannn_1111 小时前
【力扣hot100】二叉树专题+总结
java·算法·leetcode·二叉树