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

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

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

2019-11-11 00:13:03
字體:
來源:轉載
供稿:網友

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


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 漾濞| 杭锦后旗| 平武县| 湄潭县| 武山县| 富锦市| 弥渡县| 卓资县| 万宁市| 那坡县| 海安县| 蒙自县| 乌兰县| 长垣县| 康马县| 益阳市| 汕尾市| 福海县| 岐山县| 浦江县| 揭东县| 内江市| 若羌县| 梅州市| 长兴县| 巴楚县| 平远县| 资阳市| 宜良县| 神木县| 汝城县| 开阳县| 定西市| 临颍县| 灵武市| 来宾市| 长武县| 潜江市| 夏邑县| 栾城县| 饶平县|