關(guān)于java字符串的常用操作

2.String類對象的常用操作及方法

在Java中,String類包含有50多個(gè)方法來實(shí)現(xiàn)字符串的各種操作,以下介紹一些我們需要經(jīng)常使用的方法.

(1)字符串的連接

public String concat(String str)

該方法的參數(shù)為一個(gè)String類對象,作用是將參數(shù)中的字符串str連接到原來字符串的后面.

(2)求字符串的長度

public int length()

返回字串的長度,這里的長度指的是字符串中Unicode字符的數(shù)目.

(3)求字符串中某一位置的字符

public char charAt(int index)

該方法在一個(gè)特定的位置索引一個(gè)字符串,以得到字符串中指定位置的字符.值得注意的是,在字符串中第一個(gè)字符的索引是0,第二個(gè)字符的索引是1,依次類推,最后一個(gè)字符的索引是length()-1.

(4)字符串的比較

比較字符串可以利用String類提供的下列方法:

1)public int compareTo(String anotherString)

該方法比較兩個(gè)字符串,和Character類提供的compareTo方法相似,Character類提供的compareTo方法比較的是兩個(gè)字符類數(shù)據(jù),而這里比較的是字符串?dāng)?shù)據(jù).

其比較過程實(shí)際上是兩個(gè)字符串中相同位置上的字符按Unicode中排列順序逐個(gè)比較的結(jié)果.如果在整個(gè)比較過程中,沒有發(fā)現(xiàn)任何不同的地方,則表明兩個(gè)字符串是完全相等的,compareTo方法返回0;如果在比較過程中,發(fā)現(xiàn)了不同的地方,則比較過程會停下來,這時(shí)一定是兩個(gè)字符串在某個(gè)位置上不相同,如果當(dāng)前字符串在這個(gè)位置上的字符大于參數(shù)中的這個(gè)位置上的字符,compareTo方法返回一個(gè)大于0的整數(shù),否則返回一個(gè)小于0的整數(shù).

2)public boolean equals(Object anObject)

該方法比較兩個(gè)字符串,和Character類提供的equals方法相似,因?yàn)樗鼈兌际侵剌dObject類的方法.該方法比較當(dāng)前字符串和參數(shù)字符串,在兩個(gè)字符串相等的時(shí)候返回true,否則返回false.

3)public boolean equalsIgnoreCase(String anotherString)

該方法和equals方法相似,不同的地方在于,equalsIgnoreCase方法將忽略字母大小寫的區(qū)別.

(5)從字符串中提取子串

利用String類提供的substring方法可以從一個(gè)大的字符串中提取一個(gè)子串,該方法有兩種常用的形式:

1)public String substring(int beginIndex)

該方法從beginIndex位置起,從當(dāng)前字符串中取出剩余的字符作為一個(gè)新的字符串返回.

2)public String substring(int beginIndex, int endIndex)

該方法從當(dāng)前字符串中取出一個(gè)子串,該子串從beginIndex位置起至endIndex-1為結(jié)束.子串返的長度為endIndex-beginIndex.

(6)判斷字符串的前綴和后綴

判斷字符串的前綴是否為指定的字符串利用String類提供的下列方法:

1)public boolean startsWith(String prefix)

該方法用于判斷當(dāng)前字符串的前綴是否和參數(shù)中指定的字符串prefix一致,如果是,返回true,否則返回false.

2)public boolean startsWith(String prefix, int toffset)

該方法用于判斷當(dāng)前字符串從toffset位置開始的子串的前綴是否和參數(shù)中指定的字符串prefix一致,如果是,返回true,否則返回false.

判斷字符串的后綴是否為指定的字符串利用String類提供的方法:

public boolean endsWith(String suffix)

該方法用于判斷當(dāng)前字符串的后綴是否和參數(shù)中指定的字符串suffix一致,如果是,返回true,否則返回false.

(7)字符串中單個(gè)字符的查找

字符串中單個(gè)字符的查找可以利用String類提供的下列方法:

1)public int indexOf(int ch)

該方法用于查找當(dāng)前字符串中某一個(gè)特定字符ch出現(xiàn)的位置.該方法從頭向后查找,如果在字符串中找到字符ch,則返回字符ch在字符串中第一次出現(xiàn)的位置;如果在整個(gè)字符串中沒有找到字符ch,則返回-1.

2)public int indexOf(int ch, int fromIndex)

該方法和第一種方法類似,不同的地方在于,該方法從fromIndex位置向后查找,返回的仍然是字符ch在字符串第一次出現(xiàn)的位置.

3)public int lastIndexOf(int ch)

該方法和第一種方法類似,不同的地方在于,該方法從字符串的末尾位置向前查找,返回的仍然是字符ch在字符串第一次出現(xiàn)的位置.

4)public int lastIndexOf(int ch, int fromIndex)

該方法和第二種方法類似,不同的地方在于,該方法從fromIndex位置向前查找,返回的仍然是字符ch在字符串第一次出現(xiàn)的位置.

(8)字符串中子串的查找

字符串中子串的查找與字符串中單個(gè)字符的查找十分相似,可以利用String類提供的下列方法:

1)public int indexOf(String str)

2)public int indexOf(String str, int fromIndex)

3)public int lastIndexOf(String str)

4)public int lastIndexOf(String str, int fromIndex)

(9)字符串中字符大小寫的轉(zhuǎn)換

字符串中字符大小寫的轉(zhuǎn)換,可以利用String類提供的下列方法:

1)public String toLowerCase()

該方法將字符串中所有字符轉(zhuǎn)換成小寫,并返回轉(zhuǎn)換后的新串.

2)public String toUpperCase()

該方法將字符串中所有字符轉(zhuǎn)換成大寫,并返回轉(zhuǎn)換后的新串.

(10)字符串中多余空格的去除

public String trim()

該方法只是去掉開頭和結(jié)尾的空格,并返回得到的新字符串.值得注意的是,在原來字符串中間的空格并不去掉.

(11)字符串中字符的替換

1)public String replace(char oldChar,char newChar)

該方法用字符newChar替換當(dāng)前字符串中所有的字符oldChar,并返回一個(gè)新的字符串.

2)public String replaceFirst(String regex, String replacement)

該方法用字符串replacement的內(nèi)容替換當(dāng)前字符串中遇到的第一個(gè)和字符串regex相一致的子串,并將產(chǎn)生的新字符串返回.

3)public String replaceAll(String regex, String replacement)

該方法用字符串replacement的內(nèi)容替換當(dāng)前字符串中遇到的所有和字符串regex相一致的子串,并將產(chǎn)生的新字符串返回.

6.2.2 字符串變量與StringBuffer類

1.創(chuàng)建StringBuffer類對象

StringBuffer類對象表示的是字符串變量,每一個(gè)StringBuffer類對象都是可以擴(kuò)充和修改的字符串變量.以下是常用的StringBuffer類構(gòu)造函數(shù):

(1)public StringBuffer()

(2)public StringBuffer(int length)

(3)public StringBuffer(String str)??

---------------------

聲明:本博客轉(zhuǎn)自CSDN住拭,原作者fire175(后續(xù)可能會有部分更改)

原文鏈接:https://blog.csdn.net/fire1175/article/details/1690431

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市清女,隨后出現(xiàn)的幾起案子寸谜,更是在濱河造成了極大的恐慌晕窑,老刑警劉巖玻褪,帶你破解...
    沈念sama閱讀 211,376評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件纵菌,死亡現(xiàn)場離奇詭異吻氧,居然都是意外死亡瓤球,警方通過查閱死者的電腦和手機(jī)融欧,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評論 2 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來卦羡,“玉大人噪馏,你說我怎么就攤上這事÷潭” “怎么了欠肾?”我有些...
    開封第一講書人閱讀 156,966評論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀的道長蝴罪。 經(jīng)常有香客問我董济,道長,這世上最難降的妖魔是什么要门? 我笑而不...
    開封第一講書人閱讀 56,432評論 1 283
  • 正文 為了忘掉前任虏肾,我火速辦了婚禮,結(jié)果婚禮上欢搜,老公的妹妹穿的比我還像新娘封豪。我一直安慰自己,他們只是感情好炒瘟,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,519評論 6 385
  • 文/花漫 我一把揭開白布吹埠。 她就那樣靜靜地躺著,像睡著了一般疮装。 火紅的嫁衣襯著肌膚如雪缘琅。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,792評論 1 290
  • 那天廓推,我揣著相機(jī)與錄音,去河邊找鬼呻纹。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的吩跋。 我是一名探鬼主播怠惶,決...
    沈念sama閱讀 38,933評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼兰吟,長吁一口氣:“原來是場噩夢啊……” “哼混蔼!你這毒婦竟也來了遵湖?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,701評論 0 266
  • 序言:老撾萬榮一對情侶失蹤捌蚊,失蹤者是張志新(化名)和其女友劉穎挺智,沒想到半個(gè)月后谣辞,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體泥从,經(jīng)...
    沈念sama閱讀 44,143評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡杨拐,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,488評論 2 327
  • 正文 我和宋清朗相戀三年屋吨,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了山宾。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片至扰。...
    茶點(diǎn)故事閱讀 38,626評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖资锰,靈堂內(nèi)的尸體忽然破棺而出敢课,到底是詐尸還是另有隱情,我是刑警寧澤绷杜,帶...
    沈念sama閱讀 34,292評論 4 329
  • 正文 年R本政府宣布直秆,位于F島的核電站,受9級特大地震影響鞭盟,放射性物質(zhì)發(fā)生泄漏切厘。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,896評論 3 313
  • 文/蒙蒙 一懊缺、第九天 我趴在偏房一處隱蔽的房頂上張望疫稿。 院中可真熱鬧,春花似錦鹃两、人聲如沸遗座。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽途蒋。三九已至,卻和暖如春馋记,著一層夾襖步出監(jiān)牢的瞬間号坡,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工梯醒, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留宽堆,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓茸习,卻偏偏與公主長得像畜隶,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,494評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 前言 最先接觸編程的知識是在大學(xué)里面,大學(xué)里面學(xué)了一些基礎(chǔ)的知識箱亿,c語言跛锌,java語言,單片機(jī)的匯編語言等届惋;大學(xué)畢...
    oceanfive閱讀 3,048評論 0 7
  • 《Java從小白到大排握粒》紙質(zhì)版已經(jīng)上架了G饪ā!晨缴! 由字符組成的一串字符序列译秦,稱為“字符串”,在前面的章節(jié)中也多次用到...
    tony關(guān)東升閱讀 803評論 0 2
  • 一击碗、基礎(chǔ)知識:1筑悴、JVM、JRE和JDK的區(qū)別:JVM(Java Virtual Machine):java虛擬機(jī)...
    殺小賊閱讀 2,369評論 0 4
  • 最近在學(xué)寫作稍途,所以買了幾本書回來看阁吝,今晚在讀葉圣陶先生的書《好讀書而求甚解一一談閱讀》,之所以會選這書械拍,是覺的要能...
    愛橙子的魚閱讀 385評論 0 0
  • 傻傻的突勇,等待一個(gè)人等著等著也許就習(xí)慣了一個(gè)人。 相識到相知坷虑,同系不同專業(yè)的你甲馋,13年那年第一次見到你,在那間舞蹈室...
    白夜微雨閱讀 180評論 0 0