String StringBuilder和StringBuffer的区别
运行速度:或者说是执行速度,在这方面运行速度快慢为:StringBuilder > StringBuffer > String
String 字符串常量,创建之后对象不可更改
StringBuffer StringBuilder 字符串变量,创建之后是可以直接更改的,不进行创建和回收操作
线程安全:StringBuilder是线程不安全的,StringBuffer是线程安全的
在字符缓冲区被多个线程使用时
StringBuffer的很多方法是带有synchronized关键字,保证是线程安全的
而StringBuilder的方法上则没有该关键字
但如果是单线程的话,建议使用速度更快的StringBuilder
总结:String适用于少量字符串操作的情况
StringBuffer:适用于多线程在字符缓冲区进行大量操作的情况
StringBuilder:适用于单线程在字符缓冲区进行大量操作的情况
String的用法
substring中不是大写