我想删除字符串中的最后一个字符。我试过这样做:
public String method(String str) {
if (str.charAt(str.length()-1)=='x'){
str = str.replace(str.substring(str.length()-1), "");
return str;
} else{
return str;
}
}
获取字符串的长度-1并将最后一个字母替换为空(删除它),但每次我运行程序时,它都会删除与最后一个字母相同的中间字母。
例如,单词是"admirer";在我运行该方法之后,我得到了“admie”。我想让它返回admire这个词。
发布于 2011-09-16 07:21:25
replace
将替换letter的所有实例。您所需要做的就是使用substring()
public String method(String str) {
if (str != null && str.length() > 0 && str.charAt(str.length() - 1) == 'x') {
str = str.substring(0, str.length() - 1);
}
return str;
}
发布于 2012-12-22 18:01:05
为什么不只有一个班轮呢?
public static String removeLastChar(String str) {
return removeLastChars(str, 1);
}
public static String removeLastChars(String str, int chars) {
return str.substring(0, str.length() - chars);
}
完整代码
public class Main {
public static void main (String[] args) throws java.lang.Exception {
String s1 = "Remove Last CharacterY";
String s2 = "Remove Last Character2";
System.out.println("After removing s1==" + removeLastChar(s1) + "==");
System.out.println("After removing s2==" + removeLastChar(s2) + "==");
}
public static String removeLastChar(String str) {
return removeLastChars(str, 1);
}
public static String removeLastChars(String str, int chars) {
return str.substring(0, str.length() - chars);
}
}
发布于 2013-08-27 16:25:54
由于我们讨论的是一个主题,因此也可以使用正则表达式
"aaabcd".replaceFirst(".$",""); //=> aaabc
https://stackoverflow.com/questions/7438612
复制相似问题