String.contains(otherString)给出“意外类型”

时间:2013-03-05 06:14:43

标签: java string contains bluej

String doubleSpace = "  ";
String news = "The cat jumped.  The dog did not.";

while (news.contains(doubleSpace) = true)
{
    news=news.replaceAll("  ", " ");
}

以上不会编译,给出错误“意外类型。必需:变量,找到:值” 我不明白为什么,因为String.contains()应该返回一个布尔值。

4 个答案:

答案 0 :(得分:3)

while (news.contains(doubleSpace) = true)

应该是

while (news.contains(doubleSpace) == true)

=用于作业

==用于检查条件。

答案 1 :(得分:0)

你的while循环是错误的,如下所示。你是通过使用赋值来分配所以你得到那个错误。也没有必要与true比较,因为contains(...)函数本身将返回true或false如你所愿。

while (news.contains(doubleSpace))
{
    news=news.replaceAll("  ", " ");
}

答案 2 :(得分:0)

存在编译错误

while (news.contains(doubleSpace) = true)

应该是

while (news.contains(doubleSpace) == true)

答案 3 :(得分:0)

字符串上的方法.contains()已经返回布尔值 所以你不应该应用比较

无论如何你应用apply boolean operator'=='not'='

所以你的代码可以 while(news.contains(doubleSpace)== true)

{
    news=news.replaceAll("  ", " ");
}

或更准确地说

while (news.contains(doubleSpace))
{
    news=news.replaceAll("  ", " ");
}