第一种 直接传参
疑问由此而生,sb 是一个引用,存储的地址,那么它怎么 就可以打印"abcdef"呢?
这是因为 sout(System.out,println) 调用的是 sb 引用类型的 toString。
那么我们 Ctrl+左键,进入 StringBuilder 类型中
那么我们就可以这么去写,因为它的返回值本身就是 String
第二种,通过append方法去添加
附图
#ensp;
这是我们再 append 一个字符串时,会发生怎么的效果
append 可以连用。
语法: append().append();
回顾前面在讲 字符串常量池的时候,有两个字符串拼接,拼接好的字符串引用类型就是StringBuilder类型。不入池。
代码示例(模仿当时情景):
public class Test {
public static void main(String[] args) {
String str = "abcdef";
str+="123";
System.out.println(str);
}
}
效果图
附图
由此得出局部结论:在循环拼接字符串的时候,使用 StringBuilder / StringBuffer ,效率要比String更高。(最后我们在对其优化一波)
虽然我们前面说: StringBuilder 和 StringBuffer 几乎一样,但 是 几乎,而不是完全,所以还是会存在着些许不同的地方,接下来,我们就来讲一下 StringBuilder 和 StringBuffer的区别。
由此得知,StringBuilder 和 StringBuffer 的功能都差不多,大部分功能都相同,
但是 有些功能,虽然名称是一样的,但是功能上的实现,却存在着细微的区别。
比如:append
把字符串转变成StringBuilder类型/StringBuffer类型,必须调用对应的构造方法
最后
对于很多Java工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。
整理的这些资料希望对Java开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。
再分享一波我的Java面试真题+视频学习详解+技能进阶书籍
a工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。**
整理的这些资料希望对Java开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。
再分享一波我的Java面试真题+视频学习详解+技能进阶书籍
[外链图片转存中…(img-hWfv6OtX-1714476934455)]