第五章-數(shù)組和字符串-字符串

字符串(P106,綜合應(yīng)用)

處理字符串的類:string和StringBuffer

字符串常量(見課本73頁)

雙引號括起來的字符序列。示例:“student”、“你好” 或“123.456”

字符串聲明和創(chuàng)建(見課本73-74頁)

String name1 = new String( );

String name2 = new String(“Hello World”);

char a[ ] ?= {‘1’,‘2’,‘3’,‘4’,‘5’,‘6’,‘7’};

String name3 = new String(a);

String name4 = new String(a,2,4);

字符串基本操作(見課本74-77頁)

(1)字符串連接

String s1 = “sweet”;

String s2 = new String( “you ” + “are ” + s1);

(2)獲取字符串長度

方法:public int length()

功能:返回此字符串的長度

(3)字符串前綴或后綴的比較

方法:public boolean startsWith(String?prefix)

功能:測試此字符串是否以指定的前綴開始

方法:public boolean endsWith(String?suffix)

功能:測試此字符串是否以指定的后綴結(jié)束

(4)比較兩個字符串是否相同

方法:public boolean equals(Object?obj)

功能:比較兩個引用變量是否引用同一個對象,例如x.equals(y),對于任何非空引用值 x 和 y,當(dāng)且僅當(dāng) x 和 y 引用同一個對象時,此方法才返回 true(x == y 具有值 true)。

方法:public boolean equalsIgnoreCase(String?anotherString)

功能:將此String與另一個 String 比較,不考慮大小寫。如果兩個字符串的長度相同,并且其中的相應(yīng)字符都相等(忽略大小寫),則認為這兩個字符串是相等的。

方法:public int compareTo(String?str)

功能:按字典順序比較兩個字符串的大小。該比較基于字符串中各個字符的Unicode值。如果此 String 對象小于參數(shù)字符串,則返回一個負整數(shù)。如果此 String 對象大于參數(shù)字符串,則返回一個正整數(shù)。如果這兩個字符串相等,則返回 0。

方法:public int compareToIgnoreCase(String?str)

功能:按字典順序比較兩個字符串,不考慮大小寫。

(5)字符串檢索(選)

Java中字符串中子串的查找共有四種方法,第一個字符為0開始數(shù):

1、int indexOf(String str) :返回第一次出現(xiàn)的指定子字符串在此字符串中的索引。(選)?

2、int indexOf(String str, int startIndex):從指定的索引處開始,返回第一次出現(xiàn)的指定子字符串在此字符串中的索引。?

3、int lastIndexOf(String str) :返回在此字符串中最右邊出現(xiàn)的指定子字符串的索引。

4、int lastIndexOf(String str, int startIndex) :從指定的索引處開始向后搜索,返回在此字符串中最后一次出現(xiàn)的指定子字符串的索引。如startIndex=3,那么就是從第4個開始查。

注意:

[if !supportLists]l?[endif]indexOf()方法對大小寫敏感!

[if !supportLists]l?[endif]如果要檢索的字符串值沒有出現(xiàn),則該方法返回-1。

public?class?Test?{??

????public?static?void?main(String[]?args)?{??

????????String?s?=?"xXccxxxXX";??

//從頭開始查找是否存在指定的字符?????????//結(jié)果如下???

????????System.out.println(s.indexOf("c"));?????//2??

//從第四個字符位置開始往后繼續(xù)查找,包含當(dāng)前位置??

????????System.out.println(s.indexOf("c",?3));??//3??

//若指定字符串中沒有該字符則系統(tǒng)返回-1??

????????System.out.println(s.indexOf("y"));?????//-1??

????????System.out.println(s.lastIndexOf("x"));?//6??

????}??

}??

(6)取字符串的子串(選)

substring( )可以用 來從一個String里檢索一個字符子串。

substring(start,last)可以用 來從一個String里檢索start到last的字符子串,取last前的字符。

如:?String str = “0123456789”;

S1.substring( 2); ?// “23456789”

????????S2.substring( 2,5); ?// “234”

????????S1+s2=23456789234

(7)替換字符串中的某字符得到一個新字符串

方法:public String replace(char?oldChar, char?newChar)

功能:返回一個新的字符串,它是通過用newChar替換此字符串中出現(xiàn)的所有 oldChar 得到的。

(8)去掉前后空格得到一個新字符串

方法:public String trim()

功能:返回字符串的副本,去掉前后空白。

(9)基本類型值的字符串表示

String的類方法valueOf( )用于把某種基本類型的值轉(zhuǎn)換成一個String對象。

(10)字符串得到基本類型對象

每種基本類(包裝類,除Character)都有類方法能將字符串轉(zhuǎn)換成基本類的對象,形如:

?????????public static Type valueOf(String s)

其中,Type代表任何基本類,包括Boolean、Integer、Double等。

(11)字符串得到基本類型值

每種基本類(包裝類,除Character)都有類方法能從字符串中解析出基本類型的值,形如:

?????????public static type parseType(String?s)

其中,type代表任何基本數(shù)據(jù)類型,包括boolean、int、double等,Type代表相應(yīng)的包裝類。

[if !supportLists](12)[endif]改變?yōu)榇笮?/p>

?toUpperCase( )從小寫變?yōu)榇髮懀簀ava->JAVA

?toLowerCase( ) 把大寫的字母變成小寫:Java->java

[if !supportLists](13)[endif]連接字符concat()

String s = new String("你好,");

String name = new String("張三!");

String sentence = s.concat(name);

System.out.println(sentence);//結(jié)果:你好,張三!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容