Java 如何删除字符串的一部分
给定两个字符串base和remove,返回基本字符串的一个版本,其中remove字符串的所有实例都已删除(不区分大小写)。您可以假设删除字符串的长度为1或更长。仅删除不重叠的实例,因此使用“xxx”删除“xx”会留下“x” 为什么我不能使用此代码:Java 如何删除字符串的一部分,java,string,Java,String,给定两个字符串base和remove,返回基本字符串的一个版本,其中remove字符串的所有实例都已删除(不区分大小写)。您可以假设删除字符串的长度为1或更长。仅删除不重叠的实例,因此使用“xxx”删除“xx”会留下“x” 为什么我不能使用此代码: public String withoutString(String base, String remove) { base.replace(remove, ""); return base; } base.replace不会更改原
public String withoutString(String base, String remove)
{
base.replace(remove, "");
return base;
}
base.replace
不会更改原始的String
实例,因为String
是一个不可变的类。因此,必须返回replace
的输出,这是一个新的字符串
public String withoutString(String base, String remove)
{
return base.replace(remove,"");
}
String#replace()
返回一个新字符串,不会更改调用它的字符串,因为字符串是不可变的。在代码中使用此选项:
public String withoutString(String base, String remove) {
//base.replace(remove,"");//<-- base is not updated, instead a new string is builded
return base.replace(remove,"");
}
base=base。替换(删除“”)
更新您的代码:
public String withoutString(String base, String remove) {
//base.replace(remove,"");//<-- base is not updated, instead a new string is builded
return base.replace(remove,"");
}
public String withoutString(字符串基,字符串移除){
//base.replace(删除“”);//尝试以下代码
public String withoutString(String base, String remove) {
return base.replace(remove,"");
}
对于输入:
base=Hello World
remove=llo
输出:
He World
有关此类string
操作的更多信息,请访问链接。库已经实现了此方法,您无需再次编写
代码:
return StringUtils.remove(base, remove);
我不明白,为什么人们会投票回答这个问题