if
- 如果if中的条件满足,就可以执行
- if无论是否满足条件都会向下执行,直到程序结束
- 双if是每一个if都会进行判断,互相之间不会影响;
else if
- 很特殊,既要满足是else,又要满足if条件
- 即不是上一个条件的前提下,如果满足这个条件,就执行里面的操作。
- else if 满足一个条件就会停止执行。
else
- 总是与其前面最近的尚未配对的if结合
注意:
有多个if时,由于if都会执行一遍,则可能会进入到多个if中,出现未知错误,而else if就只能进入一次
测试1:
Scanner scanner=new Scanner(System.in);
int input=scanner.nextInt();
if(input==1){
System.out.println("第一个if");
}
if(input!=1){
System.out.println("第二个if");
}
else{
System.out.println("else");
}
输入1时,输出结果为:
第一个if
else
解读:
- 1满足第一个if的条件,所以可以输出
- 1不满足第二个if的条件,而else和最近的if(即第二个if)配对,所以又进入到了else分支
测试2:
Scanner scanner=new Scanner(System.in);
int input=scanner.nextInt();
if(input!=1){
System.out.println("第一个if");
}
else if(input==1){
System.out.println("第二个if");
}
else{
System.out.println("else");
}
输入2时:
第一个if
解读:
- 这三个分支只能进入一个
- 执行完一个就结束了