每个循环输出一次,而不是每次迭代

时间:2015-11-11 15:45:59

标签: java

我有一个用于在文件中搜索用户指定字符串的类。该类按预期工作,循环遍历包含多行的文件并打印 - 如果指定的字符串存在 - 包含所需字符串的行。我现在遇到的问题是我的else语句(如果前一个单词不存在则提供新单词)为每一行运行(应该如此),但我只想让它在每个循环运行一次。这是我的代码

stdheader.10.2 = COA
    stdheader.10.2 {
        setCurrent {
            field = header
            htmlSpecialChars = 1
        }
        key {
            field = header_layout
            ifEmpty = {$content.defaultHeaderType}
            ifEmpty.override.data = register: defaultHeaderType
        }
        10 = TEXT
        10.current = 1
        20 = TEXT
        20 {
            field = subheader
            stdWrap.noTrimWrap = | <span class="de-em"></span></span><small>|</small>|
            stdWrap.required = 1
            field.value = 
        }

        stdWrap.dataWrap = <h2 class="title-divider">|</h2>
        typolink.parameter.field = header_link
        stdWrap.required = 1
}
stdheader.20.2 = COA
stdheader.20.2 {
        wrap = <span style="display: none" class="hiddensubheader">|</span>
}

1 个答案:

答案 0 :(得分:2)

在进入循环之前将布尔标志设置为false。

如果找到一行将其设置为true。

循环结束后,检查标志并根据需要编写消息。

boolean found=false;

内循环

found = true;

外循环

if (!found) {
    // do stuff
}