我有一系列8个“敲除”if语句必须通过才能显示相应的响应。如果这8个if语句中的任何一个失败,则显示相应的响应。下面是我的代码...Java嵌套如果/否则条件
if (ageCustInt >= ageMinComp1Int && ageCustInt <= ageMaxComp1Int){
if(adtV1MileageCustInt >= adtVMileageMinComp1Int && adtV2MileageCustInt >= adtVMileageMinComp1Int && adtV3MileageCustInt >= adtVMileageMinComp1Int &&
adtV1MileageCustInt <= adtVMileageMaxComp1Int && adtV2MileageCustInt <= adtVMileageMaxComp1Int && adtV3MileageCustInt <= adtVMileageMaxComp1Int)
if(totalViolationsCustInt >= totalViolationsMinComp1Int && totalViolationsCustInt <= totalViolationsMaxComp1Int)
if(totalAdtDriversCustInt >= adtDriversMinComp1Int && totalAdtDriversCustInt <= adtDriversMaxComp1Int)
if(bodilyInjuryCust.equals(bodilyInjuryComp1))
if(propDamageCust.equals(propDamageComp1))
if(currentInsur.equals(presInsurKOComp1) || presInsurKOComp1.equals("Both"))
if(unUiBodilyCust.equals(unUiBodilyComp1))
{
btnComp1.setVisible(true);
lblPriceComp1.setText("$ " + price1String);
lblPriceComp1.setVisible(true);
}
} else
{
lblPriceComp1.setText("Not Competitive");
}
我得到大多是正确的结果,但每一个现在,然后从别的块的适当“没有竞争力”的结果不被显示为它应该。我的猜测是因为else语句只适用于第一个if语句,如果该语句被传递,则else语句块不会被执行。我需要构造if语句,以便如果任何if语句失败,则会执行else块。我试图重组我的块没有成功。有任何想法吗?
这个想法是:不要使用如此多的嵌套IFs ... – Andremoniy
而不是嵌套如此之多的ifs,你可以将所有的条件与语句(&&)连接在一起。 –
将_all_这些条件拉出到一个函数中,并用'&&'链接在一起。使用一个小的if。 –