决策分支——if判断语句
1.if条件语句
语法:if(布尔表达式){语句;} 以判断一个数是不是偶数为例:
int num=6; if(num%2==0) { System.out.println(num+"是偶数"); System.out.println("num的值是:"+num);
}
num的值为6,表达式“num%2==0”的结果为真,因此执行大括号内的语句,输出6是偶数。当if语句之后没有大括号时,判断表达式的真假后选择是否执行if语句后第一个分号前的内容,例如:
int num=5; if(num%2==0) System.out.println(num+"是偶数"); System.out.println("num的值是:"+num);
在判断表达式“num%2==0”的结果为假后,不执行语句System.out.println(num+"是偶数"),执行后面的语句System.out.println("num的值是:"+num)。
语法:if(布尔表达式){语句1;} else{语句2;} 以判断数学分数是否及格为例:
int math=69; if(math>=60) { System.out.println("数学成绩为:"+math+" 及格"); }else { System.out.println("数学成绩为:"+math+" 不及格"); }
当表达式为真时执行语句1,否则则执行语句2。当一段代码中只有一个else而有多个if时,else会与上一个if自动组成if else语句,例如:
int math=68; if(math<60) System.out.println("数学成绩为:"+math+" 不及格"); if(true) System.out.println("还需努力"); else System.out.println("数学成绩为:"+math+" 及格");
在这段代码中,else语句与第二个if语句联合使用,组成判断语句,由于该if语句中表达式的值恒为“true”,所以这个if else语句只会输出“还需努力”,永远不能执行else后的语句,那是一个死代码。而显然,我们需要的是在执行第一个if语句后,判断math的值小于60是否为真,为真的情况下输出“还需努力”,因此需要为第一个if语句后的代码加上大括号,例如:
int math = 68; if (math < 60) { System.out.println("数学成绩为:" + math + " 不及格"); if (true) System.out.println("还需努力"); } else System.out.println("数学成绩为:" + math + " 及格");
这样,就可以在math的值小于60为真的情况下输出“还需努力”。
else关键字不能单独使用,必须和关键字if一起使用。多分支if else语法:if(表达式1){语句1;}else if(表达式2){语句2;}...else{语句m;} 例如:
int math = 78; if (math > 90 && math <= 100) System.out.println("您的评价:A"); else if (math > 80) System.out.println("您的评价:B"); else if (math > 60) System.out.println("您的评价:C"); else System.out.println("您的评价:D");

浙公网安备 33010602011771号