標籤:java string
在Java中,String類包含有50多個方法來實現字串的各種操作。字串變數必須初始化後才能使用,如果聲明時賦值為null,則聲明的字串的值為null,否則表示未初始化的狀態。以下介紹一些我們需要經常使用的方法。
(1)字串的串連
public String concat(String str)
該方法的參數為一個String類對象,作用是將參數中的字串str串連到原來字串的後面,連接字串還可以使用+號。可以串連不同的資料類型,自動調用toString()方法,只要“+”號運算子的一個運算元是字串,編譯器就會將另一個運算元轉成字串形式。
(2)字串的長度
public int length()
返回字串的長度,這裡的長度指的是字串中Unicode字元的數目.
(3)字串中某一位置的字元
public char charAt(int index)
該方法在一個特定的位置索引一個字串,以得到字串中指定位置的字元.值得注意的是,在字串中第一個字元的索引是0,第二個字元的索引是1,依次類推,最後一個字元的索引是length()-1.
(4)字串的比較
比較字串可以利用String類提供的下列方法:
1)public int compareTo(String anotherString)
該方法比較兩個字串,和Character類提供的compareTo方法相似,Character類提供的compareTo方法比較的是兩個字元類資料,而這裡比較的是字串資料.
其比較過程實際上是兩個字串中相同位置上的字元按Unicode中排列順序逐個比較的結果.如果在整個比較過程中,沒有發現任何不同的地方,則表明兩個字串是完全相等的,compareTo方法返回0;如果在比較過程中,發現了不同的地方,則比較過程會停下來,這時一定是兩個字串在某個位置上不相同,如果當前字串在這個位置上的字元大於參數中的這個位置上的字元,compareTo方法返回一個大於0的整數,否則返回一個小於0的整數.
2)public boolean equals(Object anObject)
該方法比較兩個字串,和Character類提供的equals方法相似,因為它們都是重載Object類的方法.該方法比較當前字串和參數字串,在兩個字串相等的時候返回true,否則返回false.
3)public boolean equalsIgnoreCase(String anotherString)
該方法和equals方法相似,不同的地方在於,equalsIgnoreCase方法將忽略字母大小寫區別.
字串比較時,不可使用“==”,其用於比較兩個字串的地址。
(5)從字串中提取子串
利用String類提供的substring方法可以從一個大的字串中提取一個子串,該方法有兩種常用的形式:
1)public String substring(int beginIndex)
該方法從beginIndex位置起,從當前字串中取出剩餘的字元作為一個新的字串返回.
2)public String substring(int beginIndex, int endIndex)
該方法從當前字串中取出一個子串,該子串從beginIndex位置起至endIndex-1為結束.子串返的長度為endIndex-beginIndex.
(6)判斷字串的首碼和尾碼
判斷字串的首碼是否為指定的字串,利用String類提供的下列方法:
1)public boolean startsWith(String prefix)
該方法用於判斷當前字串的首碼是否和參數中指定的字串prefix一致,如果是,返回true,否則返回false.
2)public boolean startsWith(String prefix, int toffset)
該方法用於判斷當前字串從toffset位置開始的子串的首碼是否和參數中指定的字串prefix一致,如果是,返回true,否則返回false.
判斷字串的尾碼是否為指定的字串利用String類提供的方法:
public boolean endsWith(String suffix)
該方法用於判斷當前字串的尾碼是否和參數中指定的字串suffix一致,如果是,返回true,否則返回false.
(7)字串中單個字元的尋找
字串中單個字元的尋找可以利用String類提供的下列方法:
1)public int indexOf(int ch)
該方法用於尋找當前字串中某一個特定字元ch出現的位置.該方法從頭向後尋找,如果在字串中找到字元ch,則返回字元ch在字串中第一次出現的位置;如果在整個字串中沒有找到字元ch,則返回-1.
2)public int indexOf(int ch, int fromIndex)
該方法和第一種方法類似,不同的地方在於,該方法從fromIndex位置向後尋找,返回的仍然是字元ch在字串第一次出現的位置.
3)public int lastIndexOf(int ch)
該方法和第一種方法類似,不同的地方在於,該方法從字串的末尾位置向前尋找,返回的仍然是字元ch在字串第一次出現的位置.
4)public int lastIndexOf(int ch, int fromIndex)
該方法和第二種方法類似,不同的地方在於,該方法從fromIndex位置向前尋找,返回的仍然是字元ch在字串第一次出現的位置.
(8)字串中子串的尋找
字串中子串的尋找與字串中單個字元的尋找十分相似,可以利用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)字串中字元大小寫轉換
字串中字元大小寫轉換,可以利用String類提供的下列方法:
1)public String toLowerCase()
該方法將字串中所有字元轉換成小寫,並返迴轉換後的新串.
2)public String toUpperCase()
該方法將字串中所有字元轉換成大寫,並返迴轉換後的新串.
(10)字串中多餘空格的去除
public String trim()
該方法只是去掉開頭和結尾的空格,並返回得到的新字串.值得注意的是,在原來字串中間的空格並不去掉.
(11)字串中字元的替換
1)public String replace(char oldChar,char newChar)
該方法用字元newChar替換當前字串中所有的字元oldChar,並返回一個新的字串.
2)public String replaceFirst(String regex, String replacement)
該方法用字串replacement的內容替換當前字串中遇到的第一個和字串regex相一致的子串,並將產生的新字串返回.
3)public String replaceAll(String regex, String replacement)
該方法用字串replacement的內容替換當前字串中遇到的所有和字串regex相一致的子串,並將產生的新字串返回.
(12)字串的分割
1)split(String sign)
sign為分割字串的分割符,也可以使用Regex
2)split(String sign, int limit)
limit用於限定分割的次數
(13)字串變數與StringBuffer類
建立StringBuffer類對象
StringBuffer類對象表示的是字串變數,每一個StringBuffer類對象都是可以擴充和修改的字串變數.以下是常用的StringBuffer類建構函式:
(1)public StringBuffer()
(2)public StringBuffer(int length)
(3)public StringBuffer(String str)
Java String字串的操作