我有以下代码:
Map<String, Object> domainMap = new HashMap<String, Object>();
try {
responseJson = getFile("reviewresponse.json");
//responseJson = new String(Files.readAllBytes(Paths.get("reviewresponse.json")), StandardCharsets.UTF_8);
ObjectMapper jsonObjectMapper = new ObjectMapper();
jsonObjectMapper.configure(JsonParser.Feature.ALLOW_UNQUOTED_FIELD_NAMES, true);
domainMap = jsonObjectMapper.readValue(responseJson,
new TypeReference<Map<String, Object>>() {});
}
我想执行函数dodaj();只有一次,不是几次。怎么做?请帮忙,非常感谢。 问候。
答案 0 :(得分:2)
如果您调用dodaj
,请使用变量记住。
$called_dodaj = false;
while($row = mysql_fetch_assoc($result))
{
if(strtolower($message) == $row['question'])
{
msg($row['answer']);
update($row['question']);
} elseif (!$called_dodaj) {
dodaj(strtolower($message), '', 0);
$called_dodaj = true;
}
}
答案 1 :(得分:0)
使用break
声明:
while($row = mysql_fetch_assoc($result))
{
if(strtolower($message) == $row['question'])
{
msg($row['answer']);
update($row['question']);
} else {
dodaj(strtolower($message), '', 0);
break;
}
}
编辑:我假设您打算在调用dodaj()
后停止处理结果。但是,如果您只想调用dodaj()
一次,请使用标志变量:
$dodajCalled = false;
while($row = mysql_fetch_assoc($result))
{
if(strtolower($message) == $row['question'])
{
msg($row['answer']);
update($row['question']);
} elseif (!$dodajCalled) {
dodaj(strtolower($message), '', 0);
$dodajCalled = true;
}
}