Java替换所有字符串,替换所有小于3的数字
…我会犯一个严重的错误 这里是错误Java替换所有字符串,替换所有小于3的数字,java,Java,…我会犯一个严重的错误 这里是错误 double number[] = {1, 2, 3, 4}; pie.toString().toLowerCase().replaceAll("_", " ").replaceAll(number.toString(), "") + "."); 严重:executor服务中发生错误!服务器将立即停止。 java.util.regex.PatternSyntaxException:索引9附近的未关闭字符类 [D@12452e8 ^ 位于ja
double number[] = {1, 2, 3, 4};
pie.toString().toLowerCase().replaceAll("_", " ").replaceAll(number.toString(), "") + ".");
严重:executor服务中发生错误!服务器将立即停止。
java.util.regex.PatternSyntaxException:索引9附近的未关闭字符类
[D@12452e8
^
位于java.util.regex.Pattern.error(未知源)
位于java.util.regex.Pattern.clazz(未知源代码)
位于java.util.regex.Pattern.sequence(未知源)
位于java.util.regex.Pattern.expr(未知源)
位于java.util.regex.Pattern.compile(未知源代码)
位于java.util.regex.Pattern。(未知源)
位于java.util.regex.Pattern.compile(未知源代码)
位于java.lang.String.replaceAll(未知源)
要修复错误,只需替换
SEVERE: An error occurred in an executor service! The server will be halted immediately.
java.util.regex.PatternSyntaxException: Unclosed character class near index 9
[D@12452e8
^
at java.util.regex.Pattern.error(Unknown Source)
at java.util.regex.Pattern.clazz(Unknown Source)
at java.util.regex.Pattern.sequence(Unknown Source)
at java.util.regex.Pattern.expr(Unknown Source)
at java.util.regex.Pattern.compile(Unknown Source)
at java.util.regex.Pattern.<init>(Unknown Source)
at java.util.regex.Pattern.compile(Unknown Source)
at java.lang.String.replaceAll(Unknown Source)
借
但我不会使用replaceAll来完成此操作。相反,我会以与其他字段类似的方式向枚举中添加一个标签
字段,并调用getLabel()
而不是toString()
,或者重写toString()
以返回标签:
String number = "[1, 2, 3, 4]";
显示错误-您希望我们自己运行程序吗?您确定使用了正确的语法吗?最后一行似乎以随机的
)
结尾,我认为不应该在那里。
double number[] = {1, 2, 3, 4};
String number = "[1, 2, 3, 4]";
public static enum pie {
APPLE_PIE1(1, 250, "apple pie"),
PUMPKIN_PIE1(2, 300, "pumpkin pie"),
...
private int id;
private double exp;
private String label;
private pie(int id, double exp, String label) {
this.id = id;
this.exp = exp;
this.label = label;
}
public String getLabel() {
return label;
}
// optional: I wouldn't do it as it would make debugging harder
@Override
public String toString() {
return label;
}
}