java中String,StringBuffer,StringBuilder的区别

String:

  1,是字符串常量,一旦创建就不能修改。对于已经存在了的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去。

  2,String也是final类,不能被继承。

  3,String是对象而不是基本类型。

  4,string覆盖了equals方法和hashCode()方法。

StingBuffer:

  1,是字符串可变对象,可以对字符串进行操作,修改字符串原有值时不会新建一个对象。

  2,执行效率较慢,但是线程安全

  3,StringBuffer没有覆盖equals方法和hashCode()方法。

  4,可以动态的构造字符数据,append()方法。

StringBuilder:

  1,也是字符串可变对象,同StringBuffer一样,可以对字符串进行操作,也不会新建对象。

  2,执行效率高效,但是线程不安全。

posted @ 2019-06-19 18:07  jason小蜗牛  阅读(2536)  评论(0编辑  收藏  举报