String StringBuff StringBuilder 使用。

Posted yangjunhe460

tags:

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

1,String为字符串常量,而StringBuilder和StringBuffer均为字符串变量,即String对象一旦创建之后该对象是不可更改的,但后两者的对象是变量,是可以更改的。

   String s1 = "aaa", StringBuferr sb = new  ...   调用 change(s1, sb){   s1= "bbb", sb.append("ddd") } ; 后主程序 s1不变,sb改变。

       StringBuilder和StringBuffer的对象是变量,对变量进行操作就是直接对该对象进行更改,而不进行创建和回收的操作,所以速度要比String快很多

2.如果一个StringBuffer对象在字符串缓冲区被多个线程使用时,StringBuffer中很多方法可以带有synchronized关键字,所以可以保证线程是安全的,但StringBuilder的方法则没有该关键字,所以不能保证线程安全,有可能会出现一些错误的操作。所以如果要进行的操作是多线程的,那么就要使用StringBuffer,但是在单线程的情况下,还是建议使用速度比较快的StringBuilder。

以上是关于String StringBuff StringBuilder 使用。的主要内容,如果未能解决你的问题,请参考以下文章

stl_string

Java常见对象

Oracle 存储过程无法生成 csv 文件 - ORA-06502: PL/SQL: numeric or value error: string buff

JAVA之旅(十七)——StringBuffer的概述,存储,删除,获取,修改,反转,将缓存区的数据存储到数组中,StringBuilder

java 正则表达式

在 Spark Scala 中将 RDD[(String, String, String)] 转换为 RDD[(String, (String, String))]