當前位置:網站首頁>String類常用方法示例

String類常用方法示例

2022-01-28 11:07:28 sout('一個碼農')

目錄

String 類方法介紹

1. 用來判斷,比較的方法

2. 用來獲取其他字符串或屬性的方法

3. 轉換方法 

4. 替換方法


String 類方法介紹

1. 用來判斷,比較的方法

   boolean equals(Object obj)                     //判斷兩個字符串內容是否相等

   boolean equalsIgnoreCase(String str)    //忽略大小寫的條件下判斷兩個字符串是否相等

   boolean contains(String str)                    //判斷字符串中是否包含目標字符串

   boolean isEmpty()                                   //判斷字符串是否為空

   boolean startsWith(String prefix)            //判斷字符串是否以指定前綴開頭

   boolean startsWith(String prefix, int index)  //在索引index處,是否以 指定前綴開頭

   boolean endsWith(String suffix)              //是否以指定後綴結尾

例 : 

/*
  * 判斷與比較功能
  * */
  String s1 = "aBcD";
  String s2 = "AbCd";
  System.out.println(s1.equals(s2));  //判斷是否相等   false
  System.out.println(s1.equalsIgnoreCase(s2));  //忽略大小寫判斷是否相等 true
  System.out.println(s1.contains("aBc"));   //是否包含子串   true
  System.out.println(s1.isEmpty());       //是否為空      false
  System.out.println(s1.startsWith("aB"));   //是否以指定前綴開頭    true
  System.out.println(s1.startsWith("Bc",1)); //從索引處開始是否以指定前綴開頭 true
  System.out.println(s1.endsWith("cD"));  //是否以指定後綴結尾  true

2. 用來獲取其他字符串或屬性的方法

int length()                                                         //獲得字符串的長度

char charAt(int index)                                        //獲得索引處的char值

int indexOf(String str)                                        //獲得str 第一次出現的索引

int indexOf(String str,int fromIndex)                  //獲得從fromIndex開始查找,str的索引比特置

String substring(int start)                                  //獲得從索引start開始到結尾的子串

String substring(int start,int end)                       //獲得從start開始,end結尾但不包含end比特置的子串

例 :

  /*
    * 獲取其他字符串的方法
    * */
   String s1 = "aBcD";
   String s2 = "AbCd";
   int length = s1.length();       //獲得字符串的長度  length:4
   char c = s1.charAt(2);          //獲得索引處的char值  c:C
   int b = s1.indexOf("c");        //返回指定字符第一次出現的索引 b:2
   //返回從指定索引開始查找的字符在原字符串的索引  c1 : 2
   int c1 = s1.indexOf("c", 1);
   String str1 = s1.substring(2);   //得到從指定索引處開始截取的子串 str:"cD"
   //得到從指定索引開始截取到指定索引結束的子串,但不包含結束為止 str2:"Bc"
   String str2 = s1.substring(1,3);

3. 轉換方法 

byte[] getBytes()                                                //將字符串轉為byte[]數組
char[] toCharArray()                                          //轉為char[]數組
static String valueOf(char[] chs)                       // 將char[]數組轉為字符串
String toLowerCase()                                        // 轉小寫
String toUpperCase()                                        // 轉大寫
String concat(String str)                                    // 將兩個字符串合並為一個
String[] split(分割符);                                          //將字符串通過分割符分割成一個String[]數組
例 : 
  /*
   *  用來轉換的方法
   * */
   String s1 = "aBcD";
   String s2 = "AbCd";
   byte[] bytes = s1.getBytes();      //轉byte[]數組
   char[] chars = s1.toCharArray();   //轉char[]數組
   String s = String.valueOf(chars);  //char數組轉字符串 靜態方法
   String s3 = s1.toLowerCase();      //轉小寫 abcd
   String s4 = s1.toUpperCase();      //轉大寫 ABCD
   //將s1拼接成一個新的字符串   concat:aBcDAbCd
   String concat = s1.concat(s2);
   //用參數"c"將s1分割成一個String[]數組  cs : [aB,D]
   String[] cs = s1.split("c");

4. 替換方法

  String replace(char old,char new)                          //用一個新的字符替換所有舊的字符
  String replace(String old,String new)                     //用一個新的字符串替換所有舊的字符串
  replaceAll(String regex, String replacement)         //用一個新的字符串替換所有舊的字符串
  replaceFirst(String regex, String replacement)      //用一個新的字符串替換第一個舊的字符串
/*
* 替換方法
* */
  String s1 = "aBcDaBcD";
  String s2 = "AbCd";
  //使用一個新字符來替換全部舊的字符, replace : ABcDABcD
  String replace = s1.replace('a', 'A');
  //使用一個新字符串來替換全部舊的字符串, replace1 : aaaDaaaD
  String replace1 = s1.replace("aBc", "aaa");
  //使用一個新字符串來替換全部舊的字符串
  String s3 = s1.replaceAll("a", "A");
  //替換掉第一個匹配到的字符
  String s4 = s1.replaceFirst("a", "A")

這裏需要注意的是 , replace() 與 repalceAll()功能看上去是一樣的,但他們卻支持不一樣的功能

        replaceAll()中的方法參數為 regex 意思是它支持正則錶達式 ,也就是說它會對你傳入的字符串參數進行解析,而repalce()則是不具備這個功能

最後一個方法 : trim()  作用: 去除字符串兩邊的空格

例 : 

String s = "  ab  cd   ";
System.out.println(s.trim());

結果 :  s = "ab   cd" ,只去除兩邊的空格

版權聲明
本文為[sout('一個碼農')]所創,轉載請帶上原文鏈接,感謝
https://cht.chowdera.com/2022/01/202201281107277700.html

隨機推薦