1 string

Java中的string是字符串的基本数据类型,但是我们在Java中基本数据类型和包装类的区别?中说到过,一般情况下,我们用到类对象的机会比较多,所以string的包装类是String,这是一个不可变数据类型,类似Python中的str数据类型,一旦创建,数据值不能修改。

2 stringBuffer

stringBuffer是Java中对于string的一个补充,上面说到string是一种不可变的字符串数据类型,但是我们大部分情况下,需要用到一种可变的字符串,比如在拼接sql语句时,我们大部分情况下都是使用的stringBuffer数据类型。在Java中,stringBuffer是线程安全的,也就是说我们可以进行异步I/O操作。

3 stringBuilder

stringBuilderstringBuffer类似,都是可变的字符串数据类型,但是由于stringBuilder不是线程安全的,即不能进行异步I/O,只能进行同步操作。但是stringBuilder的运行效率又比stringBuffer更快,因为stringBuffer的线程安全特性,使得其运行效率有所下降。

写在最后

欢迎大家关注鄙人的公众号【麦田里的守望者zhg】,让我们一起成长,谢谢。
微信公众号