package base.string; /** * Stringï¼å符串常éï¼å符串é¿åº¦ä¸å¯åãJavaä¸String æ¯immutableï¼ä¸å¯åï¼çãç¨äºåæ¾åç¬¦çæ°ç»è¢«å£°æä¸ºfinalçï¼å æ¤åªè½èµå¼ä¸æ¬¡ï¼ä¸å¯åæ´æ¹ã *
* StringBufferï¼å符串åéï¼Synchronizedï¼å³çº¿ç¨å®å ¨ï¼ã妿è¦é¢ç¹å¯¹å符串å 容è¿è¡ä¿®æ¹ï¼åºäºæçèèæå¥½ä½¿ç¨ StringBufferï¼ * 妿æ³è½¬æ String ç±»åï¼å¯ä»¥è°ç¨ StringBuffer ç toString() æ¹æ³ãJava.lang.StringBuffer 线ç¨å®å ¨çå¯åå符åºåã * å¨ä»»ææ¶é´ç¹ä¸å®é½å 嫿ç§ç¹å®çå符åºåï¼ä½éè¿æäºæ¹æ³è°ç¨å¯ä»¥æ¹å该åºåçé¿åº¦åå 容ãå¯å°å符串ç¼å²åºå®å ¨å°ç¨äºå¤ä¸ªçº¿ç¨ã *
* StringBuilderï¼å符串åéï¼é线ç¨å®å ¨ï¼ãå¨å é¨ StringBuilder 对象被å½ä½æ¯ä¸ä¸ªå å«å符åºåçåé¿æ°ç»ã *
* åºæ¬ååï¼ * å¦æè¦æä½å°éçæ°æ®ç¨ String ï¼ * åçº¿ç¨æä½å¤§éæ°æ®ç¨StringBuilder ï¼ * å¤çº¿ç¨æä½å¤§éæ°æ®ï¼ç¨StringBufferã *
* String é¿åº¦å¤§å°ä¸å¯å * StringBuffer å StringBuilder é¿åº¦å¯å * StringBuffer 线ç¨å®å ¨ StringBuilder 线ç¨ä¸å®å ¨ * StringBuilder é度快 */ public class StringBufferTest { public static void main(String[] args) { StringBuilder sb = new StringBuilder(10); sb.append("Runoob.."); System.out.println(sb); //Runoob.. sb.append("!"); System.out.println(sb); //Runoob..! sb.insert(8, "Java"); System.out.println(sb); //Runoob..Java! sb.delete(5, 8); System.out.println(sb); //RunooJava! buffertest(); } public static void buffertest() { StringBuffer sBuffer = new StringBuffer("è鏿ç¨å®ç½ï¼"); sBuffer.append("www"); sBuffer.append(".runoob"); sBuffer.append(".com"); System.out.println(sBuffer); System.out.println(sBuffer.reverse()); System.out.println(sBuffer.delete(1, 2)); System.out.println(sBuffer.insert(1, "ts")); System.out.println(sBuffer.replace(1, 2, "sb")); System.out.println(sBuffer.substring(1)); } } //以䏿¯ StringBuffer ç±»æ¯æçä¸»è¦æ¹æ³ï¼ // //åºå· æ¹æ³æè¿° //1 public StringBuffer append(String s) //å°æå®çå符串追å å°æ¤å符åºåã //2 public StringBuffer reverse() // å°æ¤å符åºåç¨å ¶å转形å¼å代ã //3 public delete(int start, int end) //ç§»é¤æ¤åºåçåå符串ä¸çå符ã //4 public insert(int offset, int i) //å° int åæ°çåç¬¦ä¸²è¡¨ç¤ºå½¢å¼æå ¥æ¤åºåä¸ã //5 insert(int offset, String str) //å° str åæ°çå符串æå ¥æ¤åºåä¸ã //6 replace(int start, int end, String str) //使ç¨ç»å® String ä¸çåç¬¦æ¿æ¢æ¤åºåçåå符串ä¸çå符ã //1 int capacity() //è¿åå½å容éã //2 char charAt(int index) //è¿åæ¤åºå䏿å®ç´¢å¼å¤ç char å¼ã //3 void ensureCapacity(int minimumCapacity) //ç¡®ä¿å®¹éè³å°çäºæå®çæå°å¼ã //4 void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) //å°åç¬¦ä»æ¤åºåå¤å¶å°ç®æ å符æ°ç» dstã //5 int indexOf(String str) //è¿åç¬¬ä¸æ¬¡åºç°çæå®åå符串å¨è¯¥å符串ä¸çç´¢å¼ã //6 int indexOf(String str, int fromIndex) //仿å®çç´¢å¼å¤å¼å§ï¼è¿åç¬¬ä¸æ¬¡åºç°çæå®åå符串å¨è¯¥å符串ä¸çç´¢å¼ã //7 int lastIndexOf(String str) //è¿åæå³è¾¹åºç°çæå®ååç¬¦ä¸²å¨æ¤å符串ä¸çç´¢å¼ã //8 int lastIndexOf(String str, int fromIndex) //è¿å String 对象ä¸åå符串æååºç°çä½ç½®ã //9 int length() // è¿åé¿åº¦ï¼å符æ°ï¼ã //10 void setCharAt(int index, char ch) //å°ç»å®ç´¢å¼å¤çå符设置为 chã //11 void setLength(int newLength) //设置å符åºåçé¿åº¦ã //12 CharSequence subSequence(int start, int end) //è¿åä¸ä¸ªæ°çå符åºåï¼è¯¥å符åºåæ¯æ¤åºåçååºåã //13 String substring(int start) //è¿åä¸ä¸ªæ°ç Stringï¼å®å 嫿¤å符åºåå½åæå å«çå符ååºåã //14 String substring(int start, int end) //è¿åä¸ä¸ªæ°ç Stringï¼å®å 嫿¤åºåå½åæå å«çå符ååºåã //15 String toString() //è¿åæ¤åºå䏿°æ®çå符串表示形å¼ã