Java 这是我的代码。在这之后,检查值是否匹配direct else正在打印。如果没有执行。为什么?
这是我的密码。在这种情况下,检查值是否匹配后,直接打印else。如果没有执行。为什么?Java 这是我的代码。在这之后,检查值是否匹配direct else正在打印。如果没有执行。为什么?,java,Java,这是我的密码。在这种情况下,检查值是否匹配后,直接打印else。如果没有执行。为什么? { int index = 1; index = mapStringList(preparedStatement, index, eC1.getIy()); ResultSet result = preparedStatement.executeQuery(); while (result.next()) { String eD = result.getStr
{
int index = 1;
index = mapStringList(preparedStatement, index, eC1.getIy());
ResultSet result = preparedStatement.executeQuery();
while (result.next()) {
String eD = result.getString("code");
logger.info("code:{}", eD);
for (String values : eC1.getIy()) {
if (!StringUtils.isBlank(values) && values.matches(eD)) {
eC.setBd(result.getString("bd"));
eC.setCy(result.getString("cy"));
al.add(eC);
} else {
logger.error("No matches found");
}
}
}
}
它不会执行,因为缺少开头的花括号
{
int index = 1;
index = mapStringList(preparedStatement, index, eC1.getIy());
ResultSet result = preparedStatement.executeQuery();
while (result.next()) {
String eD = result.getString("code");
logger.info("code:{}", eD);
for (String values : eC1.getIy()){
if (!StringUtils.isBlank(values) && values.matches(eD)) {
eC.setBd(result.getString("bd"));
eC.setCy(result.getString("cy"));
al.add(eC);
} else {
logger.error("No matches found");
}
}
}
}
我打赌
if
正在执行,但条件的计算结果不是true。尝试调试器。此外,如果有一些标准需要匹配,我不会从数据库中检索所有内容;也就是说,在查询中进行筛选,这样您就不必读取不需要的行。我需要从db返回bd和cy值。但它正在检查第一个值,第二个值被第一个值覆盖。还可以使用变量名,这意味着它在哪里?请在`for之后告诉我(字符串值:eC1.getIy())`单行for
循环是不好的样式(可以说不应该添加到Java中),但它们是完全合法的。