在前面的博文《小学徒成长系列—String关键源码解析》和《小学徒进阶系列—JVM对String的处理》中,我们讲到了关于String的常用方法以及JVM对字符串常量String的处理。

但是在Java中,关于字符串操作的类还有两个,它们分别是StringBuilder和StringBuffer。我们先来就讲解一下String类和StringBuilder、StringBuffer的联系吧。

String、StringBuilder、StringBuffer的异同点

结合之前写的博文,我们对这三个常用的类的异同点进行分析:

异:

1>String的对象是不可变的;而StringBuilder和StringBuffer是可变的。

2>StringBuilder不是线程安全的;而StringBuffer是线程安全的

3>String中的offset,value,count都是被final修饰的不可修改的;而StringBuffer和StringBuilder中的value,count都是继承自AbstractStringBuilder类的,没有被final修饰,说明他们在运行期间是可修改的,而且没有offset变量。

同:

三个类都是被final修饰的,是不可被继承的。

StringBuilder和StringBuffer的构造方法

其实StringBuilder和StringBuffer的构造方法类型是一样的,里面都是通过调用父类的构造方法进行实现的,在这里,我主要以StringBuilder为例子讲解,StringBuffer就不重复累赘的讲啦。

1>构建一个初始容量为16的默认的字符串构建

1 public StringBuilder() {
2     super(16);
3 }

更多相关文章

  1. java中匹配字符串中的中文字符(含中文标点的)
  2. spring框架中一个跟String的trim方法一样的方法
  3. 当只使用get()和set()方法时,用原始类型替换AtomicBoolean?
  4. java中循环遍历删除List和Set集合中元素的方法
  5. 80端口占用异常解决方法java.net.BindException: Address alread
  6. java写入文件的几种方法小结
  7. OOP面向对象编程(一)-------方法的重载
  8. Java之美[从菜鸟到高手演变]之Java学习方法
  9. vue、react等单页面项目部署到服务器的方法及vue和react的区别

随机推荐

  1. Android Talker(1)MAC Environment
  2. Android获取OAID设备标识
  3. Android 获取imei号码,获取手机型号和系统
  4. Android消息机制之三---Message
  5. Android 多国语言文件夹
  6. Android 设置让EditText不自动获取焦点
  7. Android Studio添加aar依赖的两种方式
  8. Android PureMVC
  9. Android Gradle Plugin指南(三)——依赖关
  10. 使用air进行移动app开发常见功能和问题(二