String類的方法(歸納詳解)

首先說一下String類在哪一個包中?
答:java.lang包中。
在java中使用String類創建一個字符串變量,字符串變量屬於什麼?
答:對象。
關於在java中String類對象的創建:
字符串的聲明方式:String stringName;(駝峯命名法)。
字符串的創建:stringName = new String("張三")      或者直接給變量賦值 stringName = "張三",這裏需要注意的是當字符串用final修飾的時候,字符串不可改變變爲常量
java中String類的構造方法有哪些?
答:①public String()
           無參構造方法,用來創建空字符串的String對象。
           例如:String str = new String();
       ②public String(String value)
           用已知的字符串value創建一個String對象。
           例如:String str1 = new String("asdf");
       ③public String(char[] value)
           用char[]數組value創建一個String對象。
           例如: char[] value = {"a","b","c"};
                       String str2 = new String(value);
              注: 用value接收到的值當作屬性放入剛創建好的字符串中。
       ④public String(char chars[], int numStart, int numEnd)
          用字符數組chars[]的numStart開始到numEnd結束,創建一個String對象。
          例如: char[] value = {"a","b","c"};
                      String str3 = new String(value, 1, 2);
              注:從下標爲1的地方b開始截取兩個字符長度的數據存儲到str3的字符串的對象中。
       ⑤public String(byte[] values)
          用字節數組byte[]values創建一個String對象。
          例如: byte[] strb = new byte[]{65,66};
                      String str6 = new String(strb);
                      注: 用strb接收到的字節數組的值當作屬性放入剛創建好的新的空字符串中。
在Java類中String類常用方法:
        ①求字符串長度str.length();
            public int length()//返回的值是字符串的長度
            例如:String str = new String("qwertyuiop");
                       int strlength = str.length();
                       qwertyuiop的長度爲10
        ②字符串中某一個下標的內容str.charAt();
            public char charAt(int index)//返回字符串中指定的下標;注意字符串中第一個下標爲0,最後一個是length()-1,不然會報數組下表越界異常。
            例如:String str = new String("qwertyuiop");
                       char car = str.charAt(1);
                注:car的值爲w
         ③截取字符串substring;
            java中用String類的substring()可以截取一個字符串中的一部分內容,
           例如:String str = new String("qwertyuiop");
                      String str1 = str1.substring(1);
              注: str1 = "wertyuiop"從下標爲1開始截取  
                      String str2 = str1.substring(1,3);
              注: str2 = "wertyuiop"從下標爲1開始截取截取長度爲3
                      str2 = "wer"
         ④字符串的內容或值的對比
           例如:String str = new String("qwe");
                      String str1 = new String("QWE");
                      boolean a = str.equals(str1);
              注:.equals()對比的是文本內容,==比較的是地址,所以a=false
                      boolean b = str.equalsIgnoreCase(str1);
              注:.equalsIgnoreCase=true下面有對這兩個方法的解釋
              釋:使用equals( )方法比較兩個字符串是否相等。它具有如下的幾種情況:
                     boolean equals(Object str)
                     這裏str是一個用來與調用字符串(String)對象做比較的字符串(String)對象。
                     如果兩個字符串具有相同的字符和長度,它返回true,否則返回false。這種比較是區分大小寫的。
                     但是爲了執行忽略大小寫的比較,可以調用equalsIgnoreCase( )方法。當比較兩個字符串時,它會認爲A-Z和a-z是一樣的。其一般情況如下:
                     boolean equalsIgnoreCase(String str)
                     這裏,str是一個用來與調用字符串(String)對象做比較的字符串(String)對象。如果兩個字符串具有相同的字符和長度忽略大小寫,它也返回true,否則返回false。
          ⑤字符串拼接
                     public String concat(String str)//將參數中的字符串str連接到當前字符串的後面,效果等價於"+"。
          例如:String str = "aa".concat("abc").concat("def");
                     str的值在此時變爲abcdef;
          ⑥字符串中查找單個字符
                     public int indexOf(int ch/String str)//用於查找當前字符串中字符或子串,返回字符或子串在當前字符串中從左邊起首次出現的位置,若沒有出現則返回-1。
                     public int indexOf(int ch/String str, int fromIndex)//改方法與第一種類似,區別在於該方法從fromIndex位置向後查找。
                     public int lastIndexOf(int ch/String str)//該方法與第一種類似,區別在於該方法從字符串的末尾位置向前查找。
                     public int lastIndexOf(int ch/String str, int fromIndex)//該方法與第二種方法類似,區別於該方法從fromIndex位置向前查找。
          例如:String str = "Hallo World";
                     int a = str.indexOf('a');                          a = 1
                     int b = str.indexOf("llo");                      b = 2
                     int c = str.indexOf("o",2);                      c = 4
       int d = str.indexOf("oooo",2);               d =-1
                     int e = str.lastIndexOf("l");                    e = 9
                     int f = str.lastIndexOf("l",10);                f = 9
         ⑦字符串中字符的大小寫轉換
                     public String toLowerCase()//返回將當前字符串中所有字符轉換成小寫後的新串
                     public String toUpperCase()//返回將當前字符串中所有字符轉換成大寫後的新串
                     String str = new String("goMAIN");
                     String str1 = str.toLowerCase();//str1 = "gomain"
                     String str2 = str.toUpperCase();//str2 = "GOMAIN"
         ⑧字符串中字符的替換
                     public String replace(char oldChar, char newChar)//用字符newChar替換當前字符串中所有的oldChar字符,並返回一個新的字符串。
                     public String replaceFirst(String regex, String replacement)//該方法用字符replacement的內容替換當前字符串中遇到的第一個和字符串regex相匹配的子串,應將新的字符串返回。
                     public String replaceAll(String regex, String replacement)//該方法用字符replacement的內容替換當前字符串中遇到的所有和字符串regex相匹配的子串,應將新的字符串返回。
          例:    String str = "qwertyuqwer";
                     String str1 = str.replace('q','a');
                     str1 = "awertyuqwer"
                     String str2 = str.replace("qwer","abcd");
                     str2 = "abcdtyuqwer"
                     String str3 = str.replaceFirst("qwer","abcd");
                     str3 = "abcdtyuqwer"
                     String str4 = str.replaceAll("qwer","abcd");
                     str4 = "abcdtyuabcd"
        ⑨trim()去兩邊空格
                     String trim()//截去字符串兩端的空格,但對於中間的空格不處理。
           例:   String str = " qw er ";
                     String str1 = str.trim();
                     int a = str.length();
                     a = 7
                     int b = str1.length();
                     b = 5
        ⑩statWith()
                     boolean statWith(String prefix)或boolean endWith(String suffix)//用來比較當前字符串的起始字符或子字符串prefix和終止字符或子字符串suffix是否和當前字符串相同,重載方法中同時還可以指定比較的開始位置offset。
                     String str = "abcdef";
                     boolean a = str.statWith("ab");
                     a = true
                     boolean b = str.endWith("ef");
                     b = true
       ⑩①String[] split(String str)//將str作爲分隔符進行字符串分解,分解後的字字符串在字符串數組中返回。
           例:  String str = "asd!qwe|zxc#";
                     String[] str1 = str.split("!|#");//str1[0] = "asd";str1[1] = "qwe";str1[2] = "zxc";

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章