concat(String str):回傳當前字串與 str 連接後的新字串。可簡寫為 str1 + str2,效果相同。startsWith(String str):判斷是否以 str 開頭。endsWith(String str):判斷是否以 str 結尾。String str = "I am " + "Lingo!";
此過程實際產生三個 String 物件:"I am "、"Lingo!"、連接後的新物件。使用 + 連接字串極耗資源,JVM 內部實際以 StringBuffer 實現:
String str = new StringBuffer("I am ").append("Lingo!").toString();
上述兩種寫法等價。StringBuffer 內容可修改,提供豐富操作方法:
reverse():反轉字串append(...):尾端附加insert(int start, ...):指定位置插入delete(int start, int end):刪除指定範圍split(String regex):依分隔符切割成字串陣列replace(String regex, String str):將符合 regex 的部分替換為 strregex 代表正則表達式,不熟悉易出錯。例:
"1,3,4".split(",") // 回傳 {"1","3","4"}
"1|3|4".split("|") // 回傳 {"1","|","3","|","4"} 錯誤!
| 在正則中為「或」運算符,需轉義:
"1|3|4".split("\\|") // 正確回傳 {"1","3","4"}
因 Java 字串中 \ 需雙重轉義,故寫為 \\|。replaceAll 同理。