如何在 Java 中删除字符串中的最后一个字符
Mohammad Irfan
2023年10月12日
-
使用 Java 中的
substring()
方法从字符串中删除最后一个字符 -
在 Java 中使用
replaceFirst()
方法从字符串中删除最后一个字符 -
使用 Java 中的
removeEnd()
方法从字符串中删除最后一个字符 -
使用 Java 中的
chop()
方法从字符串中删除最后一个字符 -
使用 Java 中的
substring()
方法从字符串中删除最后一个字符 - 在 Java 8 或更高版本中删除字符串中的最后一个字符
本教程介绍了如何在 Java 中删除字符串中的最后一个字符,还列举了一些示例代码来理解这个主题。删除最后一个字符的方法有好几种,比如 substring()
方法、StringUtils
类等。让我们来仔细看看这些例子。
使用 Java 中的 substring()
方法从字符串中删除最后一个字符
String
类的 substring()
方法用于从字符串对象中获取子字符串。它需要两个参数:起始索引和最后索引。在这里,我们使用 substring()
方法在排除最后一个字符后得到一个字符串。请看下面的例子。
public class SimpleTesting {
public static void main(String args[]) {
String str = "removea";
str = str.substring(0, str.length() - 1);
System.out.println(str);
}
}
输出:
remove
在 Java 中使用 replaceFirst()
方法从字符串中删除最后一个字符
我们可以使用 replaceFirst()
方法从字符串中删除最后一个字符。它在替换了这个字符后返回一个字符串。请看下面的例子。
public class SimpleTesting {
public static void main(String args[]) {
String str = "removea";
str = str.replaceFirst(".$", "");
System.out.println(str);
}
}
输出:
remove
使用 Java 中的 removeEnd()
方法从字符串中删除最后一个字符
如果你正在使用 Apache commons lang
库,最好使用 StringUtils
类,它提供 removeEnd()
方法来删除字符串的最后一个字符。请看下面的例子。
import org.apache.commons.lang3.StringUtils;
public class SimpleTesting {
public static void main(String args[]) {
String str = "removea";
str = StringUtils.removeEnd(str, "a");
System.out.println(str);
}
}
输出:
remove
使用 Java 中的 chop()
方法从字符串中删除最后一个字符
另一个方法,StringUtils
类的 chop()
,从指定的字符串中删除最后一个字符后返回一个字符串。
import org.apache.commons.lang3.StringUtils;
public class SimpleTesting {
public static void main(String args[]) {
String str = "removea";
str = StringUtils.chop(str);
System.out.println(str);
}
}
输出:
remove
使用 Java 中的 substring()
方法从字符串中删除最后一个字符
StringUtils
类提供了 substring()
方法,该方法需要三个参数。第一个是一个字符串,第二个是一个起始索引,第三个是字符串的结束索引。它返回一个字符串,也就是指定字符串的子字符串。请看下面的例子。
import org.apache.commons.lang3.StringUtils;
public class SimpleTesting {
public static void main(String args[]) {
String str = "removea";
str = StringUtils.substring(str, 0, -1);
System.out.println(str);
}
}
输出:
remove
在 Java 8 或更高版本中删除字符串中的最后一个字符
如果你使用的是更高版本的 Java,你可以使用 Optional
类来避免 null 异常,并采用函数方法从字符串中删除最后一个字符。
import java.util.Optional;
public class SimpleTesting {
public static void main(String args[]) {
String str = "removea";
str = Optional.ofNullable(str)
.filter(s -> s.length() != 0)
.map(s -> s.substring(0, s.length() - 1))
.orElse(str);
System.out.println(str);
}
}
输出:
remove