Stringç±»ç¨æ¥è¡¨ç¤ºé£äºå建åå°±ä¸ä¼åæ¹åçå符串ï¼å®æ¯immutableçã
StringBufferç±»ç¨æ¥è¡¨ç¤ºå
容å¯åçå符串ï¼å¹¶æä¾äºä¿®æ¹åºå±å符串çæ¹æ³ã
å½æ们è¿è¡å符æ¼æ¥æ¶ï¼è¯·ä½¿ç¨StringBufferç±»èéStringç±»ï¼å 为åè
å°æ¯åè
å¿«ä¸ç¾åã
çç¡®ï¼å¨ç¨åºç太å¤åºåæ们é½ä¼è¿è¡å符串æ¼æ¥å·¥ä½ï¼ç®åç代ç 示ä¾å¦ä¸ï¼
String str="You are nice.";
str+="I love you so much.";
å¦æç¨StringBufferç±»çè¯ï¼ä»£ç å¦ä¸ï¼
StringBuffer str= new StringBuffer("You are nice.");
str.append("I love you so much.");
ä»è¡¨é¢çæ¥Stringç±»åªç¨ä¸ä¸ªå å·ï¼+ï¼ä¾¿å®æäºå符串çæ¼æ¥ï¼èStringBufferç±»å´è¦è°ç¨ä¸ä¸ªappend()æ¹æ³ï¼æ¯å¦å®ç°èµ·æ¥æ´ç®æ´ï¼æ´å纯å¢ï¼å
¶å®ä¸ç¶ï¼è®©æ们äºè§£ä¸ä¸ç¨åºè¿è¡å
é¨åçäºåªäºäºæ
ï¼
ç»ç¼è¯åç¨åºçbytecodeï¼åèç ï¼å±ç¤ºåºäºå®è´¨ï¼ å¨ç¨String类对象ç´æ¥æ¼æ¥æ¶ï¼JVMä¼å建ä¸ä¸ªä¸´æ¶çStringBuffer类对象ï¼å¹¶è°ç¨å
¶append()æ¹æ³å®æå符串çæ¼æ¥ï¼è¿æ¯å 为 Stringç±»æ¯ä¸å¯åçï¼æ¼æ¥æä½ä¸å¾ä¸ä½¿ç¨StringBufferç±»ï¼å¹¶ä¸ï¼ï¼JVMä¼å°"You are nice."å"I love you so much."å建为两个æ°çString对象ï¼ãä¹åï¼åå°è¿ä¸ªä¸´æ¶StringBuffer对象转å为ä¸ä¸ªStringï¼ä»£ä»·ä¸è²ï¼å¯è§ï¼å¨è¿ä¸ä¸ªç®åçä¸æ¬¡æ¼æ¥è¿ç¨ä¸ï¼æ们让ç¨åºå建äºå个对象ï¼ä¸¤ä¸ªå¾
æ¼æ¥çStringï¼ä¸ä¸ªä¸´æ¶StringBufferï¼åæåå°StringBuffer转åæ为çStringï¼ï¼å®å½ç¶ä¸æ¯æåçsträºï¼è¿ä¸ªå¼ç¨çå称没åï¼ä½å®æåäºæ°çString对象ã
èå¦æç´æ¥ä½¿ç¨StringBufferç±»ï¼ç¨åºå°åªäº§ç两个对象ï¼æåçStringBufferåæ¼æ¥æ¶çStringï¼"I love you so much."ï¼ï¼ä¹ä¸åéè¦å建临æ¶çStringBuffer类对象èåè¿å¾å°å
¶è½¬æ¢åString对象ã
å¯ä»¥æ³è±¡ï¼å½æ们çå符串è¦è¢«å¾ªç¯æ¼æ¥è¥å¹²æ®µæ¶ï¼ç¨Stringç±»ç´æ¥æä½ä¼å¸¦æ¥å¤å°é¢å¤çç³»ç»å¼éï¼çæå¤å°æ ç¨ç临æ¶StringBuffer对象ï¼å¹¶å¤çå¤å°æ¬¡æ è°ç强å¶ç±»å转æ¢åªã
温馨提示:内容为网友见解,仅供参考