String site_inclusion = "0;100";
for (String inc: site_inclusion.split(";")) {
if(!inc.equals(String.valueOf(record.getAttrs().get(new PdsxAttrKey("SiteId")).getValue()))) {
continue;
}
}
record.getAttrs().get(new PdsxAttrKey("SiteId")).getValue()
返回77
所以从我的代码来看,它应该continue
阻止对吗?但它不会继续下去?
有什么建议吗?
答案 0 :(得分:1)
我建议您简化代码以测试正在发生的事情。您可能在尝试构建示例时犯了一个错误。
String site_inclusion = "0;100";
for (String inc: site_inclusion.split(";")) {
String temp = String.valueOf(record.getAttrs().get(new PdsxAttrKey("SiteId")).getValue());
if(!inc.equals(temp)) {
System.out.println(inc + " != " + temp);
continue;
}
System.out.println(inc + " == " + temp);
}
答案 1 :(得分:0)
最好检查一下变量是什么(System.out.println / debugging)。
之所以不这样,你认为这是if
陈述中的条件。
尝试将代码拆分为更小的部分。
String site_inclusion = "0;100";
for(String inc : site_inclusion.split(";")) {
int value = record.getAttrs().get(new PdsxAttrKey("SiteId")).getValue();
System.out.println("Inc = " + inc + " and value = " + value);
if(!inc.equals(String.valueOf(value))) {
System.out.println("continue");
continue;
}
System.out.println(inc + " equals " + value);
}