String,StringBuffer与StringBuilder的区别??
-| String 是字符串常量。是不可改变对象。如果使用str+ = “hello”的形式,其实是先通过new StringBuffer()对象,然后再进行字符串的append,然后在使用new String()的方式转化为String对象。因此效率比较的慢
-| StringBuffer是对对象本身进行操作,在经常要修改字符串的时候,一般推荐使用Stringbuffer。因为StringBuffer的效率比较的高。是线程安全的。在多线程下不用考虑同步问题。
特殊情况:string str = “hello”+”world” jvm其实当做helloworld处理
-| StringBuilder 基本操作跟Stringbuffer一样。但是不是线程安全的。在单线程下运行效率一般比StringBuffer要快
-| String 是字符串常量。是不可改变对象。如果使用str+ = “hello”的形式,其实是先通过new StringBuffer()对象,然后再进行字符串的append,然后在使用new String()的方式转化为String对象。因此效率比较的慢
-| StringBuffer是对对象本身进行操作,在经常要修改字符串的时候,一般推荐使用Stringbuffer。因为StringBuffer的效率比较的高。是线程安全的。在多线程下不用考虑同步问题。
特殊情况:string str = “hello”+”world” jvm其实当做helloworld处理
-| StringBuilder 基本操作跟Stringbuffer一样。但是不是线程安全的。在单线程下运行效率一般比StringBuffer要快