您的位置:首页 > Web前端

String 丨StringBuffer 丨 StringBuilder 使用说明

2018-05-27 21:35 176 查看
版权声明: https://blog.csdn.net/Newabcc/article/details/80472307

 

String 字符串常量;
StringBuffer 字符串变量(线程安全,多线程使用);

 

StringBuilder 字符串变量(非线程安全,单线程使用);

运行速度(执行速度):StringBuilder > StringBuffer > String

    String 是不可变的对象,对 String 类型进行改变等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象。(所以经常改变内容的字符串最好不要用 String ,因为每次生成对象都会对系统性能产生影响,特别是当内存中无引用对象多了以后, JVM 的 GC 就会开始工作,那速度是一定会相当慢的)

特点:

 

  • String是值不可变的常量,是线程安全的(Can be shared)
  • String类使用了final修饰符,String类是不可继承的

 

...

 

拼接操作

   String>> String S1 = “This is only a” + “ simple” + “ test”;

   StringBuffer Sb = new StringBuilder(“This is only a”).append(“ simple”).append(“ test”);

 

String对象和StringBuffer对象和之间的互转

  StringBuffer和String属于不同的类型,不能直接进行强制类型转换。

[code]String s = “abcd”;
StringBuffer sbu = new StringBuffer(“12345”);
StringBuffer sbu1 = new StringBuffer(s);  //String转换为StringBuffer
String s1 = sbu.toString();               //StringBuffer转换为String

 

 

 

应用场景:

      String:适用于少量的字符串操作的情况

 

  StringBuilder:适用于单线程下在字符缓冲区进行大量操作的情况

 

  StringBuffer:适用多线程下在字符缓冲区进行大量操作的情况

                                                                                                                     学而时习之,不亦乐乎...

 

阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: