首先执行下面两个方法:
public void test_1(){//只输出a1=1
int a1=1,a2=2,a3=3,a4=4;
if (a1==1) {
System.out.print("a1="+a1);
}else if (a2==2) {
System.out.print("、a2="+a2);
}else if (a3==3) {
System.out.print("、a3="+a3);
}else if (a4==4) {
System.out.print("、a4="+a4);
}
}
public void test_2(){//输出的结果为:a1=1、a2=2、a3=3、a4=4
int a1=1,a2=2,a3=3,a4=4;
if (a1==1) {
System.out.print("a1="+a1);
}
if (a2==2) {
System.out.print("、a2="+a2);
}
if (a3==3) {
System.out.print("、a3="+a3);
}
if (a4==4) {
System.out.print("、a4="+a4);
}
}
由执行结果可以总结出这一结论:在if-else if分支结构中,如果前面有一个条件成立,则下面的分支结构将不会被执行;而if-if分支结构则不然——只要条件成立就会执行。由此我们也就不难理解在JDBC连接数据库时如果要关闭资源,采用的分支结构为if-if。