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;
//得到此字符串的長度
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類的value屬性);
//為什么小于等于32,請參看ASCII碼表,ASCII表32表示一個(gè)空格,32以下有tab制表符,\n換行符,\r回車符,\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í)例及源碼的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:
《Java終止線程實(shí)例和stop()方法源碼閱讀》
如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!
相關(guān)文章
SpringBoot集成SQL?Server的詳細(xì)指南
SQL?Server是由Microsoft開發(fā)和推廣的以客戶/服務(wù)器(c/s)模式訪問、使用Transact-SQL語言的關(guān)系數(shù)據(jù)庫管理系統(tǒng)(DBMS),本文給大家介紹了Spring?Boot集成SQL?Server的詳細(xì)指南,需要的朋友可以參考下2024-11-11
SpringCloud實(shí)現(xiàn)全鏈路灰度發(fā)布的示例詳解
灰度發(fā)布是指在軟件或服務(wù)發(fā)布過程中,將新版本的功能或服務(wù)以較小的比例引入到生產(chǎn)環(huán)境中,僅向部分用戶或節(jié)點(diǎn)提供新功能的一種發(fā)布策略,下面我們就來學(xué)習(xí)一下SpringCloud如何實(shí)現(xiàn)全鏈路灰度發(fā)布2023-11-11
Java Hibernate中的持久化類和實(shí)體類關(guān)系
Hibernate是一種Java對象關(guān)系映射框架,通過持久化類將Java對象映射到數(shù)據(jù)庫表中。持久化類需要實(shí)現(xiàn)無參構(gòu)造器、具有標(biāo)識(shí)屬性和使用注解或XML進(jìn)行映射。Hibernate通過Session來管理對象的狀態(tài),包括臨時(shí)狀態(tài)、持久化狀態(tài)和游離狀態(tài)2023-04-04
Java數(shù)據(jù)結(jié)構(gòu)順序表用法詳解
順序表是計(jì)算機(jī)內(nèi)存中以數(shù)組的形式保存的線性表,線性表的順序存儲(chǔ)是指用一組地址連續(xù)的存儲(chǔ)單元依次存儲(chǔ)線性表中的各個(gè)元素、使得線性表中在邏輯結(jié)構(gòu)上相鄰的數(shù)據(jù)元素存儲(chǔ)在相鄰的物理存儲(chǔ)單元中,即通過數(shù)據(jù)元素物理存儲(chǔ)的相鄰關(guān)系來反映數(shù)據(jù)元素之間邏輯上的相鄰關(guān)系2021-10-10
Java實(shí)現(xiàn)短信驗(yàn)證碼詳細(xì)過程
這篇文章主要給大家介紹了關(guān)于Java實(shí)現(xiàn)短信驗(yàn)證碼的相關(guān)資料, 在業(yè)務(wù)需求中我們經(jīng)常會(huì)用到短信驗(yàn)證碼,比如手機(jī)號(hào)登錄、綁定手機(jī)號(hào)、忘記密碼、敏感操作等,需要的朋友可以參考下2023-09-09
mybatis創(chuàng)建項(xiàng)目報(bào)Invalid?bound?statement?(not?found)錯(cuò)誤解決方法
使用MyBatis能夠幫助我們將SQL語句和Java代碼分離,這篇文章主要給大家介紹了關(guān)于mybatis創(chuàng)建項(xiàng)目報(bào)Invalid?bound?statement?(not?found)錯(cuò)誤的解決方法,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-05-05
SpringCloud創(chuàng)建多模塊項(xiàng)目的實(shí)現(xiàn)示例
,Spring Cloud作為一個(gè)強(qiáng)大的微服務(wù)框架,提供了豐富的功能和組件,本文主要介紹了SpringCloud創(chuàng)建多模塊項(xiàng)目的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下2024-02-02
springboot實(shí)現(xiàn)excel表格導(dǎo)出幾種常見方法
在日常的開發(fā)中避免不了操作Excel,下面這篇文章主要給大家介紹了關(guān)于springboot實(shí)現(xiàn)excel表格導(dǎo)出的幾種常見方法,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-11-11

