Java中的if-else语句——通过示例学习Java编程(7)
作者:CHAITANYA SINGH
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。来源:https://www.koofun.com/pro/kfpostsdetail?kfpostsid=18
当我们需要根据一个条件执行一组语句时,我们需要使用控制流语句。例如,如果一个数字大于零,那么我们想要打印“正数”,但是如果它小于零,那么我们要打印“负数”。在这种情况下,程序中有两个print语句,但根据对输入值的条件比较结果,每次只执行一个print语句。我们将看到如何使用控制语句在java程序中编写这种类型的条件。
下面我们将学习如何根据需求在java程序中使用四种类型的控制语句。在本教程中,我们将介绍以下条件语句:if语句、嵌套if语句、if-else语句、if-else-if语句
1)if语句
if语句包含一个条件,后面是语句或一组语句,如下所示:
1 2 3 | if (condition){ Statement(s); } |
这些语句只有在给定条件判断为true(真)时才会执行。如果条件为false(假),则if语句正文中的语句将被完全忽略。
if语句示例
1 2 3 4 5 6 7 8 9 10 11 12 | public class IfStatementExample { public static void main(String args[]){ int num= 70 ; if ( num < 100 ){ /* This println statement will only execute, * if the above condition is true */ System.out.println( "number is less than 100" ); } } } |
输出:
1 | number is less than 100 |
2)Java中的嵌套if语句
当一个if语句嵌套在另一个if语句中时,这个if语句就被称为嵌套if语句.
嵌套if的结构如下所示:
1 2 3 4 5 6 7 | if (condition_1) { Statement1(s); if (condition_2) { Statement2(s); } } |
如果condition_1(条件1)为true(真),则Statement1语句将会执行。执行完了Statement1语句后,程序走到下一个语句if(condition_2),如果condition_2(条件2)的值为true(真),则Statement2语句就会执行,反之,程序会跳过Statement2(s)语句,继续执行后面的语句。由此可见,只有在condition_1和condition_2都为true(真)的情况下,语句Statement2才会执行。
嵌套if语句示例
1 2 3 4 5 6 7 8 9 10 11 12 13 | public class NestedIfExample { public static void main(String args[]){ int num= 70 ; if (num < 100 ){ System.out.println( "number is less than 100" ); if (num > 50 ){ System.out.println( "number is greater than 50" ); } } } } |
输出:
1 2 | number is less than 100 number is greater than 50 |
3)Java中的if-else语句
if-else语句结构看上去是这样的:
1 2 3 4 5 6 | if (condition) { Statement(s); } else { Statement(s); } |
如果if后面的condition(条件)为true(真),则“if”后面的大括号{ }中的语句将执行,如果if后面的condition(条件)为false(假),则“else”后面的大括号{ }中的语句将执行。
if-else语句示例
1 2 3 4 5 6 7 8 9 10 11 12 | public class IfElseExample { public static void main(String args[]){ int num= 120 ; if ( num < 50 ){ System.out.println( "num is less than 50" ); } else { System.out.println( "num is greater than or equal 50" ); } } } |
输出:
1 | num is greater than or equal 50 |
4)if-else-if 语句
当我们需要检查多个条件时,使用if-else-if语句。在上面的声明语句中,我们只有一个“if”和一个“else”,但是我们可以有多个“else if”,也就是梯状的if语句,如下所示:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | if (condition_1) { /*if condition_1 is true execute this*/ statement(s); } else if(condition_2) { /* execute this if condition_1 is not met and * condition_2 is met */ statement(s); } else if(condition_3) { /* execute this if condition_1 & condition_2 are * not met and condition_3 is met */ statement(s); } . . . else { /* if none of the condition is true * then these statements gets executed */ statement(s); } |
注:这里需要注意的最重要一点是,在“if-else-if”语句中,一旦一个“else if”后面的条件满足了,这个条件版块里面的语句集就会被执行,其余“else if”条件版块里面的语句就都会被忽略。如果所有的else if后面的条件都不满足,则执行最后面的“other”版块中的语句。
if-else-if实例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | public class IfElseIfExample { public static void main(String args[]){ int num= 1234 ; if (num < 100 && num>= 1 ) { System.out.println( "Its a two digit number" ); } else if (num < 1000 && num>= 100 ) { System.out.println( "Its a three digit number" ); } else if (num < 10000 && num>= 1000 ) { System.out.println( "Its a four digit number" ); } else if (num < 100000 && num>= 10000 ) { System.out.println( "Its a five digit number" ); } else { System.out.println( "number is not between 1 & 99999" ); } } } |
输出:
1 | Its a four digit number |
