java筆記 String類中的方法總結

----------- android培訓java培訓、java學習型技術博客、期待與您交流! ------------

String是一個特殊類,任何一個確定的字符串都是其子類!

         其對象是不可變的,大部分對其進行的操作都會產生新的字符串對象,必要時可以使用StringBuffer代替String以節省內存。

String類中常用的方法:

查找方法:查找字符串中的某些數據

1. int length()   獲取字符串的長度,

    角標從零開始  數組中有length屬性,這裏是方法

2.char  charAt(int index)獲取某個角標上的字符

    角標過大超過字符串本身大小會引起字符串角標越界異常StringIndexOutOfBoundsException

3.int indexOf(int ch 或者某個子字符串String str)返回ch(ASCLL碼錶中的值,可以表示一個字符)或者子字符串在字符串中第一次出   現的位置

    找不到返回-1

4.int indexOf(int ch或者某個子字符串String str,int fromIndex)從fromindex指定位置開始,獲取ch或者子字符串在字符串中出現的位置

    找不到返回-1

    相應的,有從反方向查找的方法,不再贅述

判斷方法:判斷字符串中的某些數據與字符串的關係

5.boolean contains(ChartSequence s)當且僅當此字符串包含指定的 char 值序列時,返回 true。

6.boolean isEmpty() 僅當字符串length()爲0時返回true

7.boolean starts或者endsWith(String str)檢查字符串是否以指定內容開頭 或結尾

8. boolean equals(String anotherString) 將此字符串與指定的字符串(也可以是object)進行比較。 

9.boolean equalsIgnoreCase(String anotherString)   將此 String 與另一個 String 比較,不考慮大小寫。

轉換方法:與其他類型的數據進行轉換

10.String(char[] value) String類的構造函數,可以將字符數組轉化成字符串

                 例如:char[] arr=['a','b','c','d',]   String s = new String(ar);   s指向的字符串的值爲“abcd”

                 同樣的,其參數也可以是byte數組,原理相同

11. String(char[] value, int offset, int count) String類的構造函數,可以將字符數組的一部分轉化成字符串

           offset:偏移量(即從0角標位偏移了幾個位置,相當於這個值就是起始位置),count:記數,記住的是個數

                 例如:char[] arr=['a','b','c','d',]   String s = new String(ar,1,2);  s所指向的字符串的值爲:“bc”(包含起始位置)

       除了構造函數外,還有靜態方法與構造函數同效

             static String copyValueOf(char[] data)               返回指定數組中表示該字符序列的 String。 

             static String copyValueOf(char[] data, int offset, int count)               返回指定數組中表示該字符序列的 String。

12. char[] toCharArray()   將此字符串轉換爲一個新的字符數組。

            轉換成字節數組的方法爲getBytes(),同時,可指定字節的編碼方式,方法如下

                 byte[] getBytes(Charset charset) 使用給定的 charset (編碼表)將此 String 編碼到 byte 序列,並將結果存儲到新的 byte 數組。

            因爲上述方法均爲字符串調用,故其中不需要參數,函數內部使用this引用即可

13.static String valueOf(基本數據類型)  返回 基本類型數據的字符串表示形式

              其中包含:boolean char char[]  (char[] data, int offset, int count)  double  float  int  long 

              注意:參數也可包含Objecct類型,即任意對象都有其字符串表現形式

替換方法:將字符串中的部分數據進行替換
14.String replace(char oldChar, char newChar)  返回一個新的字符串,它是通過用 newChar 替換此字符串中出現的所有 oldChar 得到的。

         若原字符串中沒有newChar,那就不替換了,並不報出異常

         與之對應的,還有以下方法

             String replace(CharSequence target, CharSequence replacement)

               使用指定的字面值替換序列替換此字符串所有匹配字面值目標序列的子字符串。此方法中的參數所限制的範圍比上述方法更廣泛

15.String replaceAll(String regex, String replacement) 使用給定的 replacement 替換此字符串所有匹配給定的正則表達式的子字符串。
     String replaceFirst(String regex, String replacement) 使用給定的 replacement 替換此字符串匹配給定的正則表達式的第一個子字符串。
切割方法:將字符串中的部分數據進行切割或截取操作

16.String[] split(String regex)  根據給定正則表達式的匹配(即一個確定的值,一個匹配類似於一個類的某個確定對象)拆分此字符串。 
     String[] split(String regex, int limit)  根據匹配給定的正則表達式來拆分此字符串。

17. String substring(int beginIndex)   返回一個以beginIndex作爲起始角標的新字符串,它是此字符串的一個子字符串。
      String substring(int beginIndex, int endIndex)  返回一個新字符串,它是此字符串的一個子字符串

                    上述方法中產生的子字符串都包含起始位置的字符,但第二個方法中,不包含尾部字符
                    上述第一個方法中,角標過大時會發生角標越界異常
轉換大小寫、去空格、比較方法:

18.String toUpperCase()  使用默認語言環境的規則將此 String 中的所有字符都轉換爲大寫。

             相應的,還可根據不同的語言環境進行大寫轉換

                   String toUpperCase(Locale locale)   使用給定 Locale 的規則將此 String 中的所有字符都轉換爲大寫。

              同樣的,還有轉換成小寫的操作

                        String toLowerCase()   使用默認語言環境的規則將此 String 中的所有字符都轉換爲小寫。 

                        String toLowerCase(Locale locale)   使用給定 Locale 的規則將此 String 中的所有字符都轉換爲小寫

19. String trim()   返回字符串的副本,忽略前導空白和尾部空白,中間的空白不忽略。

20. int compareTo(String anotherString)   按字典順序比較兩個字符串。

               同樣的int compareToIgnoreCase(String str)    按字典順序比較兩個字符串,不考慮大小寫。

           從傳入的字符串的第一個字符開始比較,返回的是原字符串中字符的ASCII碼值與傳進來的參數的相對應位置上字符的ASCII的差

         

發佈了32 篇原創文章 · 獲贊 4 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章