java - 此代码可能会导致无限循环吗?

标签 java string infinite-loop

是否有任何值可以分配给 myString 变量,这会导致下面代码中的无限循环?

while (true) {
    if (myString.indexOf("  ") == -1) {
        break;
    }
    myString = myString.replaceAll("  ", " ");
}

最佳答案

Could this code potentially result in an infinite loop?

没有。但是如果可能会抛出 exception如果 myStringnull

如果字符串不包含两个空格,它将在第一次迭代后break;。否则,它确实包含两个空格,并用一个空格替换它,然后,它不会再有两个空格,它会break;

关于java - 此代码可能会导致无限循环吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20842089/

相关文章:

javascript - 我想在对象内部使用匿名函数

java - 在 Java 中并使用 Bridj,如何动态调用任何 native 函数?

recursion - 超出堆栈限制 (0.2Gb)...可能无限递归(循环):

java - GLSurfaceView 在 Android < 4.2 上工作,但在 > 4.2 上黑屏

c# - 如何去掉字符串中的\r\n

java - 如何从 java 字符串中删除这个字符 <U+2028> ?

c - C中字符串初始化为全 '\0'?

c++ - 将文件重定向到标准输入时 getline 导致无限循环

java - 扩展 Eclipse 调试功能

java - 通过 SMPP 发送 Unicode 短信