国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

JDK源碼之解讀String最終類的trim()方法實現原理

2019-11-10 21:50:38
字體:
來源:轉載
供稿:網友

JDK源碼之解讀String最終類的trim()方法實現原理

把目標字符串str轉換成字節數組,從左到有循環該字節數組,若為空,則繼續循環,否則,跳出循環。

從右到做循環該字節數組,若為空,則長度減一,否則,結束循環。

獲得字節數組起始非空位置和長度,組成新的字節數組,轉換成新的字符串newstr. 源碼如下:

   public String trim() {        int len = value.length;        int st = 0;        char[] val = value;    /* avoid getfield opcode */        while ((st < len) && (val[st] <= ' ')) {            st++;        }        while ((st < len) && (val[len - 1] <= ' ')) {            len--;        }        return ((st > 0) || (len < value.length)) ? substring(st, len) : this;    }博主自己重寫了下該方法:

	/**		 * rewrite trim		 * @param str		 * @return		 */		PRivate static  String trim(String str){			char val[]=str.toCharArray();			int len=val.length;			int st=0;			while((st<len)&&(val[st]<=' ')){				st++;			}			while((st<len)&&(val[len-1]<=' ')){				len--;			}			return ((st>0)||(len < val.length))?str.substring(st,len):str;		}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 峨眉山市| 榕江县| 二连浩特市| 万山特区| 渭源县| 金川县| 凉城县| 永靖县| 墨竹工卡县| 舞阳县| 仁寿县| 神木县| 泰和县| 怀仁县| 台东县| 海口市| 乐清市| 华池县| 慈溪市| 象州县| 东海县| 鲁甸县| 乌什县| 繁峙县| 宁都县| 河源市| 斗六市| 旬阳县| 四川省| 城口县| 莱西市| 来宾市| 探索| 闻喜县| 蒲江县| 太原市| 于都县| 商城县| 监利县| 葵青区| 峨边|