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


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 合川市| 莒南县| 望都县| 平谷区| 竹溪县| 枝江市| 读书| 无锡市| 苏尼特左旗| 莱州市| 台中市| 阿荣旗| 泗水县| 临清市| 伊吾县| 博客| 江永县| 隆尧县| 泗阳县| 正定县| 锦屏县| 和龙市| 延川县| 隆化县| 桐柏县| 扶沟县| 沙田区| 永胜县| 沿河| 视频| 荆州市| 灵寿县| 布尔津县| 甘洛县| 衢州市| 阿巴嘎旗| 溆浦县| 饶阳县| 萨迦县| 安泽县| 西乡县|