String是字符串类,字符串和数组一样只要声明后就不会再改变长度。若要改变字符串的值原内存中的内容不变,会产生一个新的字符串,即会声明一个新的内存空间,其中保存新的数据。
StringBuffer是带缓冲的字符串。
StringBuffer str=new StringBuffer(“字符串”);//初始化
对该字符串我们可以使用append()方法在原有字符串的基础上追加,而不会生成新的字符串。
StringBuilder的使用与StringBuffer相似
三者的不同:
执行速度:StringBuilder最佳,StringBuffer次之,String最差,
String:字符串常量,StringBuffer:字符串变量(线程安全),StringBuilder:字符串变量(线程非安全)
操作少量数据(String)、单线程下操作大量数据(StringBuilder)、多线程下操作大量数据(StringBuffer)