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

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

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

2019-11-10 20:44:35
字體:
來源:轉載
供稿:網友

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;		}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 洛扎县| 巴塘县| 安龙县| 神池县| 缙云县| 昆明市| 金川县| 涟水县| 南涧| 眉山市| 远安县| 奉新县| 四平市| 梅河口市| 页游| 台州市| 繁昌县| 滁州市| 平果县| 师宗县| 达孜县| 恩平市| 福州市| 灵武市| 东乡族自治县| 长治市| 巴塘县| 金昌市| 金溪县| 镇平县| 通海县| 思南县| 靖江市| 青岛市| 达孜县| 张掖市| 曲阜市| 长海县| 炉霍县| 西畴县| 双柏县|