package day13;  
/* 
StringBuffer是字符串缓冲区。 
 
是一个容器。 
特点: 
1,长度是可变化的。 
2,可以字节操作多个数据类型。 
3,最终会通过toString方法变成字符串。 
 
C create U update R read D delete 
1,存储。 
    StringBuffer append():将指定数据作为参数添加到已有数据结尾处。 
    StringBuffer insert(index,数据):可以将数据插入到指定index位置。 
2,删除。 
    StringBuffer delete(start,end):删除缓冲区中的数据,包含start,不包含end。 
    StringBuffer deleteCharAt(index):删除指定位置的字符。 
 
3,获取。 
    char charAt(int index)  
    int indexOf(String str)  
    int lastIndexOf(String str)  
    int length()  
    String substring(int start, int end)  
 
4,修改。 
    StringBuffer replace(start,end,string); 
    void setCharAt(int index, char ch) ; 
 
 
5,反转。 
    StringBuffer reverse(); 
6, 
    将缓冲区中指定数据存储到指定字符数组中。 
    void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)  
 
JDK1.5 版本之后出现了StringBuilder. 
 
StringBuffer是线程同步。    当多线程的时候就使用StringBuffer 
 
StringBuilder是线程不同步。  当是单线程的时候使用StringBuilder 
 
以后开发,建议使用StringBuilder 
 
升级三个因素: 
1,提高效率。 
2,简化书写。 
3,提高安全性。 
 
 */  
public class StringBufferDemo10 {  
  
    /** 
     * @param args 
     */  
    public static void main(String[] args) {  
        // TODO Auto-generated method stub  
        StringBuffer   sb=new StringBuffer("abcdefjhe");  
        //追加   
        //sb.append(true);  
  
        //  插入    
        //sb.insert(3, "hello");  
  
        // 删除    
        //sb.delete(2, 3);  
  
        // 删除指定位置上数据   
        //  sb.deleteCharAt(1);  
        //System.out.println(sb.toString());  
  
        //获取指定位置上的 字符  
        //char c=sb.charAt(2);  
  
        //获取指定字符的索引    
        //int  i=sb.indexOf("3");  
        //System.out.println(i);  
  
        //获取截取的子串  
        //String str=sb.substring(3);  
  
        // 替换 指定长度的字符串  
        //  StringBuffer sb1=sb.replace(1, 4, "12232425");  
        //System.out.println(sb1);  
  
        // 字符串的反转  
        //StringBuffer sb2=sb.reverse();  
        //System.out.println(sb2);  
  
  
        /*将缓冲区中指定数据存储到指定字符数组中。 
    void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) */  
  
        char[] c=new char[sb.length()];  
  
        sb.getChars(0, c.length, c, 0);  
        for (int i = 0; i < c.length; i++) {  
            System.out.println("c["+i+"]="+c[i]);  
        }  
    }  
}  

 

相关文章:

  • 2021-11-27
  • 2022-02-08
  • 2021-10-09
  • 2021-11-27
猜你喜欢
  • 2022-12-23
  • 2021-12-15
  • 2021-11-02
  • 2021-12-29
  • 2021-06-16
  • 2021-11-27
相关资源
相似解决方案