我有一个用于在文件中搜索用户指定字符串的类。该类按预期工作,循环遍历包含多行的文件并打印 - 如果指定的字符串存在 - 包含所需字符串的行。我现在遇到的问题是我的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>
}
答案 0 :(得分:2)
在进入循环之前将布尔标志设置为false。
如果找到一行将其设置为true。
循环结束后,检查标志并根据需要编写消息。
boolean found=false;
内循环
found = true;
外循环
if (!found) {
// do stuff
}