扫码关注微信公众号

回复“面试手册”,获取本站PDF版

回复“简历”,获取高质量简历模板

回复“加群”,加入程序员交流群

回复“电子书”,获取程序员类电子书

当前位置: Java > Java基础高频面试题 > 11. Java中String和StringBuffer、StringBuilder的区别是什么?

1.可变性

String不可变,StringBuilderStringBuffer是可变的

2.线程安全性

String由于是不可变的,所以线程安全。StringBuffer对方法加了同步锁或者对调用的方法加了同步锁,所以是线程安全的。 StringBuilder并没有对方法进行加同步锁,所以是非线程安全的。

3.性能

StringBuilder > StringBuffer > String

为了方便记忆,总结如下

是否可变是否安全性能
String不可变安全
StringBuilder可变不安全
StringBuffer可变安全较高

点击面试手册,获取本站面试手册PDF完整版