我陷入了重复出现在Eclipse中的错误。我认为这个错误不应该存在。给ist以下嵌套循环:

String conditionlogic;
if(matcher.find())
{
    do
        conditionogic += matcher.group();
    while(matcher.find());
}
else
    conditionogic = null;

错误是



据我了解,由于do-while将至少执行一次条件逻辑实际上是使用matcher.group()的一个或多个值初始化的,否则将执行null。
我怎样才能解决这个问题?

最佳答案

这行是什么意思:

conditionogic += matcher.group();

这与以下内容相同:
conditionogic = conditionogic + matcher.group();

即它的意思是:取conditionogic的值并将其串联到matcher.group()。但是,当您第一次进入循环时,conditionogic的值确实是未知的。您必须为此变量分配一些内容,例如空字符串:
String conditionlogic = "";

关于java - if-else : variable not initialized中的嵌套do-while循环,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24907280/

10-10 14:50