java中string.trim()函數(shù)的作用實(shí)例及源碼
trim()的作用:去掉字符串首尾的空格。
public static void main(String arg[]){ String a=" hello world "; String b="hello world"; System.out.println(b.equals(a)); a=a.trim(); //去掉字符串首尾的空格 System.out.println(a.equals(b)); }
執(zhí)行結(jié)果:
a: hello world ,false
a:hello world,true
trim()的源代碼:
public String trim() {
int arg0 = this.value.length;
//得到此字符串的長(zhǎng)度
int arg1 = 0;
//聲明一個(gè)int 值,并賦值為0
char[] arg2;
//聲明一個(gè)char數(shù)組
for (arg2 = this.value; arg1 < arg0 && arg2[arg1] <= 32; ++arg1) {
//將此字符數(shù)組賦值給arg2字符數(shù)組(java字符串底層是字符數(shù)組,這個(gè)字符數(shù)組就是String類(lèi)的value屬性);
//為什么小于等于32,請(qǐng)參看ASCII碼表,ASCII表32表示一個(gè)空格,32以下有tab制表符,\n換行符,\r回車(chē)符,\b退格等。
//如果一個(gè)字符串為“ 123 ”,那么這個(gè)方法運(yùn)行完畢,arg1的值會(huì)被賦值為1.
;
}
while (arg1 < arg0 && arg2[arg0 - 1] <= 32) {
--arg0;
//如果一個(gè)字符串為“ 123 ”,那么這個(gè)方法運(yùn)行完畢,arg0會(huì)被賦值為4
}
return arg1 <= 0 && arg0 >= this.value.length ? this : this.substring(arg1, arg0);
//arg1==1,所以走后面。this.substring(1,4)
//含頭不含尾,結(jié)果為“123”
}
總結(jié)
以上就是本文關(guān)于java中string.trim()函數(shù)的作用實(shí)例及源碼的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:
《Java終止線(xiàn)程實(shí)例和stop()方法源碼閱讀》
如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!
相關(guān)文章
Java如何利用Socket進(jìn)行數(shù)據(jù)讀寫(xiě)
這篇文章主要介紹了Java如何利用Socket進(jìn)行數(shù)據(jù)讀寫(xiě),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-10-10關(guān)于MyBatis通用Mapper@Table注解使用的注意點(diǎn)
這篇文章主要介紹了關(guān)于MyBatis通用Mapper@Table注解使用的注意點(diǎn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11Spring?BeanFactory?與?FactoryBean?的區(qū)別詳情
這篇文章主要介紹了Spring?BeanFactory?與?FactoryBean?的區(qū)別詳情,BeanFactory?和?FactoryBean?的區(qū)別卻是一個(gè)很重要的知識(shí)點(diǎn),在本文中將結(jié)合源碼進(jìn)行分析講解,需要的小伙伴可以參考一下2022-05-05Java實(shí)現(xiàn)判斷瀏覽器版本與類(lèi)型簡(jiǎn)單代碼示例
這篇文章主要介紹了Java實(shí)現(xiàn)判斷瀏覽器版本與類(lèi)型簡(jiǎn)單代碼示例,具有一定借鑒價(jià)值,需要的朋友可以參考下。2017-12-12SpringMVC獲取請(qǐng)求參數(shù)的方法詳解
這篇文章主要為大家詳細(xì)介紹了SpringMVC中獲取請(qǐng)求參數(shù)的方法,例如通過(guò)ServletAPI獲取和通過(guò)控制器方法的形參獲取請(qǐng)求參數(shù)等,需要的可以參考下2023-07-07在Java的Spring框架的程序中使用JDBC API操作數(shù)據(jù)庫(kù)
這篇文章主要介紹了在Java的Spring框架的程序中使用JDBC API操作數(shù)據(jù)庫(kù)的方法,并通過(guò)示例展示了其存儲(chǔ)過(guò)程以及基本SQL語(yǔ)句的應(yīng)用,需要的朋友可以參考下2015-12-12