zoukankan      html  css  js  c++  java
  • StringBuffer and StringBuilder

     1 package cn.jiu.com;
     2 /*
     3  * Java StringBuffer和StringBuilder类
     4  * 
     5 当对字符串进行修改的时候,需要使用StringBuffer和StringBuilder类。
     6 
     7 和String类不同的是,StringBuffer和StringBuilder类的对象能够被多次的修改,并且不产生新的未使用对象。
     8 
     9 StringBuilder类在Java 5中被提出,
    10 
    11 它和StringBuffer之间的最大不同在于StringBuilder的方法不是线程安全的(线程安全就是多线程访问时,采用了加锁机制,
    12 
    13 当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问直到该线程读取完,其他线程才可使用。不会出现数据不一致或者数据污染。
    14 
    15 线程不安全就是不提供数据访问保护,有可能出现多个线程先后更改数据造成所得到的数据是脏数据)。
    16 
    17 由于StringBuilder相较于StringBuffer有速度优势,所以多数情况下建议使用StringBuilder类。然而在应用程序要求线程安全的情况下,则必须使用StringBuffer类。
    18  * 
    19  * 
    20  * 
    21  * 
    22  * 
    23  */
    24 public class Work02 {
    25     public static void main(String[] args) {
    26         fun();
    27         fun01();
    28         fun02();
    29         fun03();
    30         fun04();
    31         fun05();
    32     }
    33     //append 将指定的字符串追加到此字符序列。 添加到缓冲区!
    34     public static    void fun(){
    35         StringBuffer b=new StringBuffer("你好");
    36             b.append(66);
    37             System.out.println(b);
    38     }
    39     //replace 替换
    40     public static    void fun01(){
    41         StringBuffer b=new StringBuffer();
    42         b.append("你好啊!");
    43         b.replace(0, 1, "傻逼");
    44 //            b.replace(2, 2, "66");
    45         System.out.println(b);
    46     }
    47     //reverse 反转!
    48     public static    void fun02(){
    49         StringBuffer b=new StringBuffer();
    50             b.append(6699);
    51             b.reverse();
    52             System.out.println(b);
    53     }
    54     //toString
    55     public static    void fun03(){
    56         StringBuffer b=new StringBuffer();
    57             b.append("6699");
    58             b.toString();
    59             System.out.println(b);
    60     }
    61     //delete 移除此序列的子字符串中的字符 。 取值上!有头无尾!
    62     public static    void fun04(){
    63         StringBuffer b=new StringBuffer();
    64             b.append("6699");
    65             b.delete(0, 3);
    66             System.out.println(b);
    67     }
    68     //insert 将 int 参数的字符串表示形式插入此序列中
    69     public static    void fun05(){
    70         StringBuffer b=new StringBuffer();
    71             b.append("6699");
    72             b.insert(0, 6);
    73             System.out.println(b);
    74     }
    75     
    76 }
  • 相关阅读:
    C# GetHashCode 部分冲突列表 数字字符串版本
    Amazon Dynamo DB
    SCTP 一句话介绍
    SystemTap 使用以及安装
    Windows Azure Service Disruption on Feb 29th
    发布ASP.NET MVC3网站
    SQLServer数据集合的交、并、差集运算
    DataTable的几个函数
    oracle创建表空间以及用户的语句
    asp.net mvc3及odp.net资料下载地址
  • 原文地址:https://www.cnblogs.com/ZXF6/p/10571380.html
Copyright © 2011-2022 走看看