1. 程式人生 > >StringUtils常用工具類

StringUtils常用工具類

平常我們寫程式碼是經常用到工具類,每次都要查,很麻煩,所以我搜集資料在這裡總結一下,如果有不正確或不合理的地方,還請你評論執教,謝謝 \(0_0)/

 首先,我就先說說Java中最常見的判空處理
在校驗一個String為空時通常有以下幾種情況:
 a.是否為null
 b.是否為""
 c.是否為字串" " (中間有空格)
 isBlank()方法可以一次性校驗上面三種情況,返回true

判空處理的StringUtils類

1.isEmpty(String str)  判斷一個字串是否為空,空格字元為false。
2.isNotEmpty(String str)  判斷一個字串是否為非空,空格字元為true。
3.isBlank(String str)  判斷一個字串是否為空,空格為true。
4.isNotBlank(String str) 判斷一個字串是否非空,空格為false

處理空格的StringUtils類

1.trim() 使用trim方法可以將字串兩邊的空格刪除例如
String str = " helloWorld "; String ts = trim(str); ts= "helloWorld"; 如果str為null則返回null
2.trimToEmpty() 與trim()方法相似,區別:如果str為null返回""
3.trimToNull() 呼叫給方法時,底層會先呼叫trim()方法將字串兩邊的空格刪除,然後在判斷字串是否為null,為null返回null,否則返回字串
4.deleteWhitespace(String str)  刪除字串中空白符,包括轉移字元

處理字串首尾兩端字元的StringUtils類

1.strip(String str,String chars) 去除字串兩端與chars相同的字元    例如:StringUtils.strip("aaabadd_adddaa","a") == "badd_add";
2.stripStart(String str,String chars) 去除字串前端與chars相同的字元
3.stripEnd(String str,String chars) 去除字串後端與chars相同的字元

比較兩個字串是否相等

1.equals(String str1, String str2) 比較兩個字串的值是否相等,返回boolean;如果都為空返回true,視為相等。
查詢字串中某一個字元
1.indexOf(String str, char char) 查詢char字元在字串str中第一次出現的位置,如果沒找到或str為null返回-1。
2.indexOf(String str, char char,int startpositon) 查詢char字元從start position開始在字串str中第一次出現的位置,如果沒找到或str為null返回-1。
3.indexOfAny(String str, char[] chars)  找出字元陣列chars中的字元第一次出現在字串str中的位置,如果字元不在字串或為null返回false。
4.contains(String str, char char) 查詢字串中是否包含char字元,返回boolea;如果字串為null或char為null,返回false。
5.containsIgnoreCase(String str, char char) 與contains()方法相同,區別:不區分大小寫。

擷取字串

1.subString(String str, int start)  從start開始,包括start開始,包括start位置的字元,得到字串str的字串,如果start為負數,則從後開始,如果字串str為null或"",怎返回本身。
2.subString(String str, int start, int end)  從start開始,包括start開始到end結束,包括start和end位置的字元,得到字串str的字串,如果start為負數,則從後開始,如果字串str為null或"",怎返回本身。
 3.subStringBefore(String str1, String str2)  得到字串str2第一次出現之前的字串,不包括str2字串,如果字串str1為null,則返回本身
 4.subStringAfter(String str1, String str2) 得到字串str2第一次出現之後的字串,不包括str2字串,如果字串str1為null,則返回本身
 5.left(String str, int len) 從左邊數得到字串len長度的子串,如果字串為null或"",則返回本身;如果len小於0,返回""。
 6.right(String str, int len)  與left()方法相反
 7.mid(String str, int position, int len) 得到字串從position開始len長度的子串,如果position小於0,則視為0。
 8.split(String str) 將字串分成一個字串陣列,用空白符做分隔符,如果字串為null,返回null;如果字串為"",返回空陣列{}
 9.split(String str, char char)  按照char字元拆分字串。

拼接字串

1.join(Object[] arr) 將陣列中元素連線成一個字串。
2.join(Object[] arr, char char) 將陣列中的元素連線成字串,並用char字元分隔。

刪除字串

1.remove(String str, char remove)  去掉字串str中包含的remove部分。
2.removeStart(String str, String remove) 如果字串以remove開始,則去掉remove,然後返回,否則返回原來的串。
3.removeEnd(String str, String remove) 如果字串以remove結束,則去掉remove,然後返回,否則返回原來的串。
4.replace(String str, String old, String new) 將字串str中的所有字元子串old用字元子串new替換。
5.replaceChars(String str, char old, char new) 將字串str中的所有字元old用字元new替換。
6.overlay(String str, String new, int start, int end) 將str從start開始到end結束部分的字元字串替換成字串new。
7.chop(String str) 去掉字串最後一個字元。
8.repeat(String str, int current) 重複字串current次。
9.center(String str, int size)  產生一個長度為size的新的字串,str位於新串的中心
字串大小寫轉換
1.swapCase(String str)  將字串中的大寫轉小寫,小寫轉大寫。

可能還有遺漏的歡迎評論補充  -。-