国产探花免费观看_亚洲丰满少妇自慰呻吟_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;		}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 瑞昌市| 靖远县| 镇宁| 河源市| 崇仁县| 镇安县| 绍兴县| 高唐县| 自治县| 墨玉县| 咸阳市| 江北区| 灵山县| 兴义市| 陇川县| 深泽县| 密山市| 南皮县| 略阳县| 疏勒县| 将乐县| 信阳市| 宜昌市| 奈曼旗| 当涂县| 沧源| 浦江县| 老河口市| 平凉市| 崇阳县| 平昌县| 化德县| 湖北省| 壶关县| 若尔盖县| 察哈| 萨迦县| 呼图壁县| 资源县| 白山市| 罗定市|