在java中,我尝试用'';。但是它';“s秀”;空文字字符“;错误

在java中,我尝试用'';。但是它';“s秀”;空文字字符“;错误,java,char,Java,Char,在java中,我尝试将char替换为“”。但它显示“空文字字符”错误。我有一个条件,关于某些字符必须是“”,而不是“” 不包括一个空字符。下面是示例代码: for(int i=0; int<name.length;i++){ name=name.replace(name.charAt(i),''); } for(int i=0;int您不能让一个字符什么都不代表。您需要长度为零的字符序列,即空字符串 因此,您的第一个参数也需要转换为使用 如果要删除某些特定字符,可以通过以

在java中,我尝试将char替换为“”。但它显示“空文字字符”错误。我有一个条件,关于某些字符必须是“”,而不是“” 不包括一个空字符。下面是示例代码:

for(int i=0; int<name.length;i++){
    name=name.replace(name.charAt(i),'');
    }

for(int i=0;int您不能让一个字符什么都不代表。您需要长度为零的字符序列,即空字符串

因此,您的第一个参数也需要转换为使用


如果要删除某些特定字符,可以通过以下方式尝试:

//Convert String to CharArray
   char[] ch = name.toCharArray();
   String newName = "";
   for (char c: ch) {
    if (wantThisCharacter(c)) newName+=c;
}
    name = newName;

你不能用零替换字符。你必须从字符串中删除该字符。这有什么意义?你有
int
,你可能想成为
i
,然后,你遍历每个字符并用零替换它?字符串解决方案会改变长度,你的循环会有点垃圾。在我的字符串中的特定索引之后,字符必须是“”。我这样问是为了便于理解。有一个字符为空错误,重复的问题是包含特定值。我的问题取决于用户值字符串是不可变的。这意味着您真的没有删除字符,您只是创建了一个新字符串,它是ol的副本删除了一个字符的d字符串。@SerdarYILMAZ在特定索引之后,您希望字符串为空吗?您应该检查一下,您可以调用它一次,并且不必进行循环。我建议使用
StringBuilder
而不是literal
string
,因为字符串是不可变的,您有很多字符串会被丢弃汉克斯,@Lino,一定会记住我从迈克尔那里找到了答案。但你的方法对我很有用。谢谢:)谢谢你的帮助
//Convert String to CharArray
   char[] ch = name.toCharArray();
   String newName = "";
   for (char c: ch) {
    if (wantThisCharacter(c)) newName+=c;
}
    name = newName;