一、使用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-hk/n/256619.html