Java基础之String类StringBuffer类StringBuilder类

Posted in-the-game-of-thrones

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础之String类StringBuffer类StringBuilder类相关的知识,希望对你有一定的参考价值。

String类对象有两种实例化方法

  直接赋值:只开辟一块对内存空间,可以自动入池。

  构造方法:开辟两块【堆】内存空间,不会自动入池,使用intern()方法手动入池。

任何一个字符串都是String类的匿名对象。

字符串一旦声明则不可以改变,可以改变的只是String类对象的引用。

String类可以使用 + 进行字符串的连接操作

StringBuffer类的内容可以进行修改,而String类的内容是不可以修改的。

在String类里面,提供了一个与StringBuffer类比较的方法:

  public boolean contentEquals(StringBuffer sb)// String与StringBuffer比较的方法
  public StringBuffer reverse()//字符串反转

StringBuilder类几乎与StringBuffer的定义几乎一模一样。

 

比较String与StringBuilder与StringBuffer区别?

  String的内容一旦声明则不可以改变,而StringBuffer与StringBuilder声明的内容可以改变。

  StringBuffer类中提供的方法都是同步方法(使用synchronized),属于安全的线程操作,而StringBuilder类中的方法属于异步方法,属于非线程安全的操作,StringBuilder比StringBuffer性能上稍高。

  在开发中大多数使用String,在频繁操作字符串拼接时使用StringBuilder,在考虑线程安全时,使用StringBuffer。

以上是关于Java基础之String类StringBuffer类StringBuilder类的主要内容,如果未能解决你的问题,请参考以下文章

Java基础之String类StringBuffer类StringBuilder类

20175317 《Java程序设计》第七周学习总结

java基础之数据类型转换

StringBuilder / StringBuffer类

Java基础之File类和String类

06. Java基础之String