private String unusedDigits = new String("0123456789*#");
unusedDigits = unusedDigits.replaceFirst("1", "");
//...
unusedDigits = unusedDigits.replaceFirst("*", ""); // <--- problem
我是 Java 初学者。为什么我在使用 replaceFirst()
和 "*"
时遇到问题?它转到一些不同的代码流(与某些同步
相关)。如果我评论该声明,那么一切正常!
最佳答案
在replaceFirst()
中,第一个参数是一个正则表达式。您可以使用 Pattern.quote("*")
代替:
unusedDigits = unusedDigits.replaceFirst(Pattern.quote("*"), "");
关于java - 与 "*"一起使用时 String::replaceFirst() 有问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6407820/