Posted 寮€鍙戣€呮妧鏈墠绾?/a>

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了相关的知识,希望对你有一定的参考价值。

鐐瑰嚮鈥?/span> 寮€鍙戣€呮妧鏈墠绾?/span> 鈥濓紝閫夋嫨鈥滄槦鏍囸煍濃€?/span>
13锛?1 鍦ㄧ湅|鏄熸爣|鐣欒█,  鐪熺埍
鏉ヨ嚜锛歍horben Janssen |  璐g紪锛?/span> 涔愪箰
閾炬帴锛?/span> t.cn/AiFxzzSP
澶у鏁板紑鍙戣€呰涓烘€ц兘浼樺寲鏄竴涓鏉傜殑璇濋锛屽畠闇€瑕佸ぇ閲忕殑宸ヤ綔缁忛獙鍜岀浉鍏崇煡璇嗙悊璁恒€?/span> 濂藉惂锛岃繖涔熶笉瀹屽叏閿欍€?/span>
浼樺寲涓€涓簲鐢ㄥ仛鍒版€ц兘鏈€浼樺寲鍙兘涓嶆槸浠跺鏄撶殑浠诲姟锛屼絾鏄繖骞朵笉鎰忓懗鐫€浣犳病鏈夌浉鍏崇殑鐭ヨ瘑灏变粈涔堜篃鍋氫笉浜嗐€傝繖閲屾湁涓€浜涙槗浜庨伒寰殑寤鸿鍜屾渶浣冲疄璺靛彲浠ュ府鍔╀綘鍒涘缓涓€涓€ц兘鑹ソ鐨勫簲鐢ㄧ▼搴忋€?
杩欎簺寤鸿鐨勫ぇ閮ㄥ垎閮芥槸閽堝 Java 璇█鐨勩€備絾鏄篃鏈変竴浜涙槸璺熻瑷€鏃犲叧鐨勶紝浣犲彲浠ヨ繍鐢ㄥ埌浠绘剰鐨勫簲鐢ㄥ拰绋嬪簭涓€傚湪鎴戜滑瀛︿範鐗瑰畾鐨?Java 缂栫▼鎬ц兘璋冧紭涔嬪墠锛屽厛鏉ユ帰璁ㄤ竴浜涢€氱敤鐨勬妧宸с€?

1. 鍦ㄦ槑纭繀瑕佷箣鍓嶅埆鎬ョ潃浼樺寲

杩欏彲鑳芥槸鏈€閲嶈鐨勬€ц兘浼樺寲鎶€宸т箣涓€銆備綘搴旇閬靛惊甯歌鐨勬渶浣冲疄璺靛仛娉曞苟鍦ㄦ渚嬩腑楂樻晥鍦板簲鐢ㄥ畠銆備絾鏄繖骞朵笉鎰忓懗鍦ㄨ瘉鏄庡繀瑕佷箣鍓嶏紝浣犲簲璇ユ洿鎹换浣曟爣鍑嗗簱鎴栨瀯寤哄鏉傜殑浼樺寲銆?
澶氭暟鎯呭喌涓嬶紝杩囨棭鍦颁紭鍖栦細鍗犵敤澶ч噺鐨勬椂闂达紝鑰屼笖浼氫娇浠g爜鍙樺緱闅句互鐞嗚В鍜岄槄璇汇€傛洿绯熺硶鐨勬槸锛岃繖浜涗紭鍖栭€氬父骞舵病甯︽潵浠讳綍濂藉锛屽洜涓轰綘鑺变簡澶ч噺鐨勬椂闂村湪浼樺寲搴旂敤涓殑闈炲叧閿儴鍒嗐€?

閭d箞锛岃鎬庝箞璇佹槑涓滆タ闇€瑕佷紭鍖栧憿锛?/strong>
棣栧厛锛屼綘闇€瑕佸畾涔変綘鐨勪唬鐮侀€熷害寰楀蹇€備緥濡傦紝涓烘墍鏈?API 璋冪敤鎸囧畾鏈€澶у搷搴旀椂闂达紝鎴栬€呮寚瀹氬湪鐗瑰畾鏃堕棿鑼冨洿鍐呰瀵煎叆鐨勮褰曟暟閲忋€傚湪鍋氬畬杩欎簺鍚庯紝浣犻渶瑕佺‘瀹氫綘搴旂敤涓摢浜涢儴鍒嗗お鎱㈤渶瑕佹敼杩涖€傚綋瀹屾垚杩欎簺鍚庯紝浣犲氨鍙互鏉ョ湅鐪嬬浜屼釜鎶€宸ф彁绀恒€?

2.浣跨敤鍒嗘瀽鍣ㄦ壘鍒扮湡姝g殑鐡堕

鍦ㄥ畬鎴愮涓€閮ㄥ垎鐨勪紭鍖栧缓璁互閴村埆鍑轰綘搴旂敤涓渶瑕佹彁鍗囩殑閮ㄥ垎鍚庯紝瑕佷粠鍝噷鍏ユ墜鍛?
浣犲彲浠ユ湁涓ょ閫斿緞鏉ヨВ鍐宠繖涓棶棰橈細
  • 鏌ョ湅浣犵殑浠g爜锛屼粠鐪嬭捣鏉ュ彲鐤戠殑鎴栬€呬綘瑙夊緱鍙兘浼氬鑷村嚭鐜伴棶棰樼殑鍦版柟鍏ユ墜銆?/span>

  • 鎴栬€呬娇鐢ㄥ垎鏋愬櫒鑾峰彇浠g爜姣忎釜閮ㄥ垎鐨勮涓?鎵ц杩囩▼)鍜屾€ц兘鐨勮缁嗕俊鎭€?/span>

甯屾湜鎴戜笉闇€瑕佽В閲婁负浠€涔堝簲璇ュ缁堥伒寰浜岀閫斿緞/鏂规硶鐨勫師鍥犮€?
寰堟樉鐒讹紝鍩轰簬鍒嗘瀽鍣ㄧ殑鏂瑰紡鍙互璁╀綘鏇村ソ鍦扮悊瑙d唬鐮佺殑鎬ц兘褰卞搷锛屽苟鍏佽浣犲幓涓撴敞浜庢洿鍏抽敭鐨勯儴鍒?浠g爜)銆傚嵆浣夸綘鏇剧粡浣跨敤杩囧垎鏋愬櫒锛屼綘涓€瀹氳寰椾綘鏇剧粡澶氫箞鎯婅浜庝竴涓嬪氨鎵惧埌浜嗕唬鐮佺殑鍝簺閮ㄥ垎浜х敓浜嗘€ц兘闂銆傛垜绗竴娆$殑鐚滄祴涓嶆涓€娆″湴瀵艰嚧鎴戣蛋閿欎簡鏂瑰悜銆?

3. 涓烘暣涓簲鐢ㄧ▼搴忓垱寤轰竴涓€ц兘娴嬭瘯濂椾欢

杩欐槸鍙︿竴涓€氱敤鐨勫彲浠ュ府鍔╀綘閬垮厤鍦ㄥ皢鎬ц兘鏀硅繘閮ㄧ讲鍒颁骇鍝佷腑涔嬪悗缁忓父浼氬彂鐢熺殑璁稿鎰忓闂鐨勬妧宸с€備綘搴旇鎬绘槸瀹氫箟涓€涓€ц兘娴嬭瘯濂椾欢鏉ユ祴璇曟暣涓簲鐢ㄧ▼搴忥紝骞跺湪鎬ц兘鏀硅繘涔嬪墠鍜屼箣鍚庤繍琛屽畠銆?
杩欎簺棰濆鐨勬祴璇曡繍琛屽皢甯姪浣犺瘑鍒綘鐨勬敼鍔ㄦ墍寮曡捣鐨勫姛鑳藉拰鎬ц兘涓婄殑鍓綔鐢紝骞剁‘淇濅笉浼氬鑷村紛澶т簬鍒╃殑鏇存柊銆傚鏋滀綘澶勭悊鐨勬槸琚簲鐢ㄧ▼搴忕殑澶氫釜涓嶅悓閮ㄥ垎浣跨敤鐨勭粍浠讹紝濡傛暟鎹簱鎴栫紦瀛橈紝閭h繖涓€鐐瑰挨涓洪噸瑕併€?

4. 浼樺厛鍏虫敞鏈€澶х摱棰?/span>

鍦ㄥ垱寤轰簡娴嬭瘯濂椾欢骞朵娇鐢ㄥ垎鏋愬櫒鍒嗘瀽浣犵殑搴旂敤绋嬪簭涔嬪悗锛屼綘鍙互鍒楀嚭涓€绯诲垪闇€瑕佽В鍐充互鎻愰珮鎬ц兘鐨勯棶棰樺垪琛ㄣ€傝繖寰堝ソ锛屼絾杩欏苟娌℃湁鍥炵瓟浣犻渶瑕佷粠鍝噷寮€濮嬬殑闂銆備綘鍙互涓撴敞浜庨€熸垚鏂规锛屾垨浠庢渶閲嶈鐨勯棶棰樺紑濮嬨€?
閫熸垚鏂规涓€寮€濮嬪彲鑳戒細寰堟湁鍚稿紩鍔涳紝鍥犱负浣犲彲浠ュ緢蹇樉绀虹涓€涓垚鏋溿€備絾鏈夋椂锛屽彲鑳芥湁蹇呰璇存湇鍏朵粬鍥㈤槦鎴愬憳鎴栫鐞嗗眰璁や负鎬ц兘鍒嗘瀽鏄€煎緱鐨勩€?
涓€鑸潵璇达紝鎴戝缓璁粠椤跺眰寮€濮嬶紝棣栧厛寮€濮嬪鐞嗘渶閲嶈鐨勬€ц兘闂銆傝繖灏嗕负浣犳彁渚涙渶澶х殑鎬ц兘鏀硅繘锛岃€屼笖浣犲彲鑳戒粎闇€瑕佽В鍐宠繖浜涢棶棰樹腑鐨勪竴灏忛儴鍒嗗氨鑳芥弧瓒充綘鐨勬€ц兘瑕佹眰銆?
甯歌鐨勯€氱敤璋冧紭鎶€宸у埌姝ょ粨鏉熴€傛帴涓嬫潵璁╂垜浠粩缁嗙湅鐪嬩竴浜涚壒瀹氫簬 Java 鐨勬妧宸с€?

5. 浣跨敤 StringBuilder 浠ョ紪绋嬫柟寮忚繛鎺ュ瓧绗︿覆

鍦?Java 涓湁寰堝涓嶅悓鐨勯€夐」鏉ヨ繛鎺ュ瓧绗︿覆銆備緥濡傦紝浣犲彲浠ヤ娇鐢ㄧ畝鍗曠殑 + 鎴?+ = 锛屼互鍙婅€佺殑 StringBuffer 鎴?StringBuilder 銆?
閭d箞锛屼綘搴旇閫夋嫨鍝鏂规硶鍛紵
绛旀鍙栧喅浜庤繛鎺ュ瓧绗︿覆鐨勪唬鐮併€傚鏋滀綘鏄互缂栫▼鏂瑰紡灏嗘柊鍐呭娣诲姞鍒板瓧绗︿覆涓紝渚嬪鍦╢or寰幆涓紝鍒欏簲浣跨敤 StringBuilder 銆傚畠寰堟槗浜庝娇鐢紝骞舵彁渚涙瘮 StringBuffer 鏇村ソ鐨勬€ц兘銆備絾璇疯浣忥紝涓?StringBuffer 鐩告瘮锛?StringBuilder 涓嶆槸绾跨▼瀹夊叏鐨勶紝鍙兘骞朵笉閫傜敤浜庢墍鏈夋儏鍐点€?
浣犲彧闇€瑕佸疄渚嬪寲涓€涓柊鐨?StringBuilder 骞惰皟鐢╝ppend鏂规硶鏉ュ悜String涓坊鍔犱竴涓柊鐨勯儴鍒嗐€傚湪浣犳坊鍔犲畬浜嗘墍鏈夌殑閮ㄥ垎鍚庯紝浣犲彲浠ヨ皟鐢╰oString()鏂规硶鏉ユ绱㈠凡杩炴帴鐨勫瓧绗︿覆銆備笅闈㈢殑浠g爜鐗囨灞曠ず浜嗕竴涓畝鍗曠殑渚嬪瓙銆?
鍦ㄦ瘡娆¤凯浠f湡闂达紝璇ュ惊鐜皢 i 杞崲涓轰竴涓?String 锛屽苟灏嗗叾涓庣┖鏍间竴璧锋坊鍔犲埌 StringBuilder sb 涓€傛墍浠ワ紝鏈€鍚庯紝杩欐浠g爜鍦ㄦ棩蹇楁枃浠朵腑鍐欏叆 鈥淭his is a test0 1 2 3 4 5 6 7 8 9鈥?銆?
                                                        
                                                          
                                                          
                                                        
StringBuilder sb =  new StringBuilder(鈥淭his is a test鈥?; for ( int i= 0; i< 10; i++) {
    sb. append(i);
    sb. append(鈥?nbsp;鈥?;
}
log.info(sb.toString());
姝e浣犲湪浠g爜鐗囨涓湅鍒扮殑銆傛垜浠彲浠ヤ负瀛楃涓茬殑绗竴涓厓绱犳彁渚涘埌鏋勯€犲嚱鏁颁腑銆傝繖浼氬垱寤轰竴涓?StringBuilder 锛屽叾涓寘鍚簡浣犳墍鎻愪緵鐨勫瓧绗︿覆浠ュ強 16 涓澶栧瓧绗︾殑瀹归噺銆傚綋浣犲悜 StringBuilder 涓坊鍔犳洿澶氬瓧绗︽椂锛屼綘鐨?JVM 灏嗗姩鎬佺殑澧炲姞 StringBuilder 鐨勫ぇ灏忋€?
濡傛灉浣犲凡缁忕煡閬撳瓧绗︿覆灏嗗寘鍚灏戜釜瀛楃锛屽垯鍙互灏嗚鏁板瓧鎻愪緵缁欎笉鍚岀殑鏋勯€犳柟娉曚互瀹炰緥鍖栧叿鏈夋寚瀹氬閲忕殑 StringBuilder 銆傝繖杩涗竴姝ユ彁楂樹簡鏁堢巼锛屽洜涓哄畠涓嶉渶瑕佸姩鎬佹墿灞曞叾瀹归噺銆?

6. 灏藉彲鑳戒娇鐢ㄥ熀鏈被鍨?/span>

閬垮厤浠讳綍寮€閿€骞舵彁楂樺簲鐢ㄧ▼搴忔€ц兘鐨勫彟涓€绉嶇畝渚垮揩閫熺殑鏂规硶鏄娇鐢ㄥ熀鏈被鍨嬭€屼笉鏄叾鍖呰绫汇€傛墍浠ワ紝鏈€濂戒娇鐢?int 鑰屼笉鏄?Integer 锛屾槸 double 鑰屼笉鏄?Double 銆傝繖灏嗕娇寰椾綘鐨?JVM 灏嗗€煎瓨鍌ㄥ湪鍫嗘爤鑰屼笉鏄爢涓紝浠ュ噺灏戝唴瀛樻秷鑰楋紝骞舵洿鏈夋晥鍦板鐞嗗畠銆?

7. 灏介噺閬垮厤澶ф暣鏁板拰灏忔暟

鐢变簬鎴戜滑宸茬粡鍦ㄨ璁烘暟鎹被鍨嬶紝鎵€浠ユ垜浠篃搴旇蹇€熸祻瑙堝ぇ鏁存暟鍜屽皬鏁般€傚挨鍏舵槸鍚庤€呭洜鍏剁簿纭€ц€屽彈娆㈣繋銆備絾杩欐槸鏈変唬浠风殑銆傚ぇ鏁存暟鍜屽皬鏁版瘮涓€涓畝鍗曠殑 long 鍨嬫垨 double 鍨嬮渶瑕佹洿澶氱殑鍐呭瓨锛屽苟浼氭樉钁楀噺鎱㈡墍鏈夌殑杩愮畻銆傛墍浠ワ紝濡傛灉浣犻渶瑕侀澶栫殑绮惧害锛屾垨鑰呭鏋滀綘鐨勬暟瀛楄秴鍑轰竴涓緝闀跨殑鑼冨洿锛屾渶濂借涓夋€濄€傝繖鍙兘鏄綘闇€瑕佹洿鏀瑰苟瑙e喅鎬ц兘闂鐨勫敮涓€鏂规硶锛屽挨鍏舵槸鍦ㄥ疄鐜版暟瀛︾畻娉曟椂銆?

8. 浣跨敤 Apache Commons StringUtils.Replace 鑰屼笉鏄?String.replace

涓€鑸潵璇达紝String.replace 鏂规硶鍙互姝e父宸ヤ綔锛屽苟涓旀晥鐜囧緢楂橈紝灏ゅ叾鏄湪浣犱娇鐢?Java 9 鐨勬儏鍐典笅銆備絾鏄紝濡傛灉浣犵殑搴旂敤绋嬪簭闇€瑕佸ぇ閲忕殑鏇挎崲鎿嶄綔锛屽苟涓旀病鏈夋洿鏂板埌鏈€鏂扮殑 Java 鐗堟湰锛岄偅涔堟鏌ユ洿蹇拰鏇存湁鏁堢殑鏇夸唬鍝佷緷鐒舵槸鏈夊繀瑕佺殑銆?
鏈変竴绉嶅€欓€夋柟妗堟槸 Apache Commons Lang 鐨?StringUtils.replace 鏂规硶銆傛濡?Lukas Eder 鍦ㄤ粬鏈€杩戠殑涓€绡囧崥瀹㈡枃绔犱腑鎵€鎻忚堪鐨勶紝瀹冭繙杩滆儨杩囦簡 Java 8 鐨?String.replace 鏂规硶銆?
鑰屼笖瀹冨彧闇€瑕佸緢灏忕殑鏀瑰姩銆備綘鍙渶瑕佸皢 Apache Commons Lang 椤圭洰鐨?Maven 渚濊禆椤规坊鍔犲埌浣犵殑搴旂敤绋嬪簭鐨?pom.xml 涓紝骞跺皢 String.replacemethod 鐨勬墍鏈夎皟鐢ㄦ浛鎹负 StringUtils.replace 鏂规硶銆?
                                                        
                                                          
                                                          
                                                        
// replace this
test.replace(鈥? test鈥? 鈥渟imple  test鈥?;
// with this
StringUtils.replace( test, 鈥? test鈥? 鈥渟imple  test鈥?;

9. 鏄傝吹鐨勭紦瀛樿祫婧愶紝濡傛暟鎹簱杩炴帴

缂撳瓨鏄伩鍏嶉噸澶嶆墽琛屾槀璐垫垨甯哥敤浠g爜鐗囨鐨勬祦琛岃В鍐虫柟妗堛€傛€荤殑鎬濊矾寰堢畝鍗曪細閲嶅浣跨敤杩欎簺璧勬簮姣斿垱寤轰竴涓柊鐨勮祫婧愭洿鍒掔畻銆?
涓€涓吀鍨嬬殑渚嬪瓙鏄紦瀛樻睜涓殑鏁版嵁搴撹繛鎺ャ€傛柊杩炴帴鐨勫垱寤洪渶瑕佹椂闂达紝濡傛灉浣犻噸鐢ㄧ幇鏈夎繛鎺ワ紝鍒欏彲浠ラ伩鍏嶈繖绉嶆儏鍐点€?
浣犱篃鍙互鍦?Java 璇█婧愮爜涓壘鍒板叾浠栫殑渚嬪瓙銆備緥濡傦紝鍦?Integer 绫讳腑鐨?valueOf 鏂规硶缂撳瓨浜嗕粙浜?-128 鍒?127 涔嬮棿鐨勫€笺€備綘鍙兘浼氳鍒涘缓涓€涓柊鐨?Integer 骞朵笉鏄お鏄傝吹锛屼絾鏄敱浜庡畠缁忓父琚娇鐢紝鍥犳缂撳瓨鏈€甯哥敤鐨勫€间篃鍙互鎻愪緵鎬ц兘浼樺娍銆?
浣嗘槸锛屽綋浣犺€冭檻浣跨敤缂撳瓨鏃讹紝璇疯浣忕紦瀛樺疄鐜颁篃浼氫骇鐢熷紑閿€銆備綘闇€瑕佽姳璐归澶栫殑鍐呭瓨鏉ュ偍瀛樺彲閲嶅浣跨敤鐨勮祫婧愶紝鍥犳浣犲彲鑳介渶瑕佺鐞嗕綘鐨勭紦瀛樹互浣胯祫婧愬彲璁块棶锛屽苟鍒犻櫎杩囨湡鐨勮祫婧愩€?
鎵€浠ワ紝鍦ㄥ紑濮嬬紦瀛樹换浣曡祫婧愪箣鍓嶏紝璇风‘淇濆畠浠槸缁忓父浣跨敤鐨勶紝浠ヨ秴杩囩紦瀛樺疄鐜扮殑寮€閿€(浠d环)銆?

鎬荤粨

姝e浣犳墍鐪嬪埌鐨勶紝鏈夋椂涓嶉渶瑕佸お澶氱殑宸ヤ綔灏卞彲浠ユ彁楂樹綘鐨勫簲鐢ㄧ▼搴忕殑鎬ц兘銆傛湰鏂囦腑鐨勫ぇ閮ㄥ垎寤鸿鍙渶瑕佺◢浣滃姫鍔涘氨鍙互灏嗗畠浠簲鐢ㄤ簬浣犵殑浠g爜涓€?
浣嗚繕鏄偅鍙ヨ瘽锛屾渶閲嶈鐨勮繕鏄偅浜涗笌鏄粈涔堢紪绋嬭瑷€鏃犲叧鐨勬妧宸э細
  • 鍦ㄤ綘鐭ラ亾鍏跺繀瑕佹€т箣鍓嶄笉瑕佽繘琛屼紭鍖?/span>

  • 浣跨敤鍒嗘瀽鍣紙profiler锛夋潵鏌ユ壘鐪熸鐨勭摱

  • 浼樺厛澶勭悊鏈€澶х殑鐡堕




END


寮€鍙戣€呮妧鏈墠绾?锛屾眹闆嗘妧鏈墠绾垮揩璁拰鍏虫敞琛屼笟瓒嬪娍锛屽ぇ鍘傚共璐э紝鏄紑鍙戣€呯粡鍘嗗拰鎴愰暱鐨勪紭绉€鎸囧崡 銆?/span>
鍘嗗彶鎺ㄨ崘





9 涓彲浠ュ揩閫?Java 鎬ц兘璋冧紭鎶€宸?> 
                                                                                     </section> 
                                                                                    </section> 
                                                                                   </section> 
                                                                                  </section> 
                                                                                 </section> 
                                                                                </section> 
                                                                               </section> 
                                                                              </section> 
                                                                             </section> 
                                                                            </section> 
                                                                           </section> 
                                                                          </article> 
                                                                         </section> 
                                                                         <section class=
9 涓彲浠ュ揩閫?Java 鎬ц兘璋冧紭鎶€宸?> 
                                                                           </section> 
                                                                           <section class=
濂芥枃鐐逛釜鍦ㄧ湅鍚э紒


以上是关于的主要内容,如果未能解决你的问题,请参考以下文章

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js

片段和活动之间的核心区别是啥?哪些代码可以写成片段?

VSCode自定义代码片段——.vue文件的模板

VSCode自定义代码片段6——CSS选择器

VSCode自定义代码片段——声明函数

VSCode自定义代码片段8——声明函数