StringBuffer类总结

 
  1. package day13;  
  2. /* 
  3. StringBuffer是字符串缓冲区。 
  4.  
  5. 是一个容器。 
  6. 特点: 
  7. 1,长度是可变化的。 
  8. 2,可以字节操作多个数据类型。 
  9. 3,最终会通过toString方法变成字符串。 
  10.  
  11. C create U update R read D delete 
  12. 1,存储。 
  13.     StringBuffer append():将指定数据作为参数添加到已有数据结尾处。 
  14.     StringBuffer insert(index,数据):可以将数据插入到指定index位置。 
  15. 2,删除。 
  16.     StringBuffer delete(start,end):删除缓冲区中的数据,包含start,不包含end。 
  17.     StringBuffer deleteCharAt(index):删除指定位置的字符。 
  18.  
  19. 3,获取。 
  20.     char charAt(int index)  
  21.     int indexOf(String str)  
  22.     int lastIndexOf(String str)  
  23.     int length()  
  24.     String substring(int start, int end)  
  25.  
  26. 4,修改。 
  27.     StringBuffer replace(start,end,string); 
  28.     void setCharAt(int index, char ch) ; 
  29.  
  30.  
  31. 5,反转。 
  32.     StringBuffer reverse(); 
  33. 6, 
  34.     将缓冲区中指定数据存储到指定字符数组中。 
  35.     void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)  
  36.  
  37. JDK1.5 版本之后出现了StringBuilder. 
  38.  
  39. StringBuffer是线程同步。    当多线程的时候就使用StringBuffer 
  40.  
  41. StringBuilder是线程不同步。  当是单线程的时候使用StringBuilder 
  42.  
  43. 以后开发,建议使用StringBuilder 
  44.  
  45. 升级三个因素: 
  46. 1,提高效率。 
  47. 2,简化书写。 
  48. 3,提高安全性。 
  49.  
  50.  */  
  51. public class StringBufferDemo10 {  
  52.   
  53.     /** 
  54.      * @param args 
  55.      */  
  56.     public static void main(String[] args) {  
  57.         // TODO Auto-generated method stub  
  58.         StringBuffer   sb=new StringBuffer("abcdefjhe");  
  59.         //追加   
  60.         //sb.append(true);  
  61.   
  62.         //  插入    
  63.         //sb.insert(3, "hello");  
  64.   
  65.         // 删除    
  66.         //sb.delete(2, 3);  
  67.   
  68.         // 删除指定位置上数据   
  69.         //  sb.deleteCharAt(1);  
  70.         //System.out.println(sb.toString());  
  71.   
  72.         //获取指定位置上的 字符  
  73.         //char c=sb.charAt(2);  
  74.   
  75.         //获取指定字符的索引    
  76.         //int  i=sb.indexOf("3");  
  77.         //System.out.println(i);  
  78.   
  79.         //获取截取的子串  
  80.         //String str=sb.substring(3);  
  81.   
  82.         // 替换 指定长度的字符串  
  83.         //  StringBuffer sb1=sb.replace(1, 4, "12232425");  
  84.         //System.out.println(sb1);  
  85.   
  86.         // 字符串的反转  
  87.         //StringBuffer sb2=sb.reverse();  
  88.         //System.out.println(sb2);  
  89.   
  90.   
  91.         /*将缓冲区中指定数据存储到指定字符数组中。 
  92.     void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) */  
  93.   
  94.         char[] c=new char[sb.length()];  
  95.   
  96.         sb.getChars(0, c.length, c, 0);  
  97.         for (int i = 0; i < c.length; i++) {  
  98.             System.out.println("c["+i+"]="+c[i]);  
  99.         }  
  100.     }  
  101.   
  102.   
  103. }  

你可能感兴趣的:(StringBuffer类总结)