一、使用substring方法去除最後一個字元
如果要去掉字元串中最後一個字元,可以使用substring方法,將字元串截取為除了最後一個字元之外的子字元串:
public static String removeLastChar(String str) { return str.substring(0, str.length()-1); }
這裡的substring方法傳入兩個參數,第一個參數為起始位置,第二個參數為結束位置,其中結束位置不包含在截取結果中。因此,這裡的第二個參數為字元串長度減一,即保留除了最後一個字元以外的所有字元。
二、使用StringBuilder的delete方法去除最後一個字元
另外一種方法是使用StringBuilder類,將字元串轉換為可修改的StringBuilder實例,然後使用delete方法刪除最後一個字元:
public static String removeLastChar(String str) { StringBuilder sb = new StringBuilder(str); sb.deleteCharAt(str.length()-1); return sb.toString(); }
這裡的deleteCharAt方法傳入的參數為要刪除的字元的下標,因此這裡直接使用str.length()-1作為參數即可刪除最後一個字元。
三、使用正則表達式去除最後一個字元
還可以使用正則表達式,將最後一個字元替換為空字元串:
public static String removeLastChar(String str) { return str.replaceAll(".$", ""); }
這裡的$表示匹配字元串的結尾位置,因此.$匹配最後一個字元,將其替換為空字元串即可實現去除最後一個字元的效果。
四、注意事項
需要注意的是,如果字元串本身為空字元串,或者只包含一個字元,以上方法會拋出異常或得到錯誤的結果。可以通過加入空字元串和長度判斷的方式來避免這種情況的發生。
public static String removeLastChar(String str) { if (str == null || str.length() <= 1) { return ""; } return str.substring(0, str.length()-1); }
以上方法可以保證字元串為空或只包含一個字元時返回空字元串,否則返回去除最後一個字元之後的子串。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/256619.html