选择结构语句
1.if条件语句:
1.if语句
if语句是指如果满足某种条件就进行某种处理,用于根据条件的真假来决定是否执行特定的代码块。
if (condition) {
// 当条件为真时执行的代码
}
在这个语法中,condition是一个布尔表达式,它可以是一个比较运算符、逻辑运算符或任何返回布尔值的表达式。当condition为真时,if语句中的代码块将被执行;否则,它将被跳过。
2.if..else语句
if..else语句是指如果满足某种条件,就进行某种处理,否则就进行另外一种处理。 条件是一个布尔表达式,如果表达式的结果为true,则执行if代码块中的代码,否则执行else代码块中的代码。
if (条件) {
// 如果条件为真执行的代码块
} else {
// 如果条件为假执行的代码块
}
3.if..else if...else语句
if..else if...else语句:用于对多个条件进行判断,这种语句结构允许你根据多种不同的情况执行不同的代码块。它首先判断条件1是否为true,如果是,则执行条件1对应的代码块;如果不是,则判断条件2是否为true,如果是,则执行条件2对应的代码块;如果都不是,则执行最后的else代码块。可以根据需要添加任意多个else if条件,以及一个可选的else条件。每个条件都会按照顺序逐个判断,直到找到第一个为true的条件,然后执行对应的代码块。如果所有条件都是false,那么将执行最后的else代码块。
除了if-else语句外,还有一种更简洁的if-else语法,即三元运算符。它的语法是:
变量 = (条件) ? 表达式1 : 表达式2;
如果条件为真,则返回表达式1的值,否则返回表达式2的值。这个语法常用于给变量赋值的情况。
2.switch语句
switch语句是一种条件语句,switch语句由关键字switch、一个表达式和一组case 语句构成,它根据某个表达式的值,在一系列不同的情况下执行不同的代码块,switch后括号中的内容按照自上而下的顺序和分支case后的值进行一 一对比,如果匹配成功,则执行该case分支所对应的Java语句,switch 语句的使用场景通常是当我们需要根据某个变量的不同取值来执行不同的操作时,可以避免使用长串的 if-else if-else 结构,使代码更加简洁和可读性更高。
switch (expression) {
case value1:
// code block 1
break;
case value2:
// code block 2
break;
case value3:
// code block 3
break;
default:
// default code block
}
expression
是一个可以求值的表达式,通常是一个整数或一个字符。value1
,value2
,value3
等是可能的表达式结果的值,也可以是常量或枚举。- 每个
case
标签后面的代码块表示在expression
的值与该标签的结果相等时要执行的代码。如果匹配到某个case
后,会执行该case
后的代码块,并通过break
关键字跳出switch
语句。 default
标签后面的代码块是可选的,它表示当expression
的值与所有的case
结果都不匹配时要执行的代码。通常default
分支位于switch
语句的最后,但它可以放在任何位置。
3.switch语句和if语句的区别:
以下几点区别:
-
适用范围:switch语句适用于有多个条件需要判断的情况,而if语句适用于只有一个条件需要判断的情况。
-
表达式类型:switch语句的表达式可以是整型、字符型、字符串型等,而if语句的条件可以是任意的布尔表达式。
-
多分支判断:switch语句可以根据表达式的值匹配不同的case分支,而if语句需要使用多个嵌套的if-else语句来实现多分支判断。
-
执行方式:switch语句的执行方式是根据表达式值匹配相应的case标签,并从该标签开始顺序执行,直到遇到break语句或switch语句结束。而if语句是根据条件的布尔值来决定执行哪个分支。
总之,switch语句更适合根据多个条件的不同值执行不同的操作,而if语句适用于更灵活的条件判断。