流程控制1:选择结构----学习笔记

it2022-05-05  153

Java程序的执行,一般分三种:顺序执行、选择执行、循环执行

选择结构分两种:if-else结构 和 switch多选结构

if-else中又分三种: a)if单选

if(条件表达式){ 代码; } 表达式条件为真,则执行后面{}中的内容,为假则跳过{}中的内容,继续向下执行。 也可省略{},此时程序会把if表达式之后第一个;之前的语句,当作if结构中的语句, 例如: if(false) System.out.println("A"); System.out.println("B"); //此时只输出B,因为输出A的语句被当作if结构体中的语句,条件表达式为false,不执行

b)if else双选

if(条件表达式) { 条件为true时执行的代码; } else { 条件为false时执行的代码; } 条件为真,执行if中的语句,然后再执行if...else之外的语句;反之执行else中的语句, 然后执行if...else之后的语句。同if结构,{}可以省略。

c)if-else if-else if-else

if (条件表达式1) { 条件1为true时执行的代码; } else if(条件表达式2) { 条件2为true时执行的代码; } …… else { 条件1和条件2都不为true执行的代码; } 其中,else if语句可以有多个。 条件1为真,则执行if中的语句;如果条件2为真,则执行else if中的语句;...; 如果条件都不满足再执行else中的语句;最后再执行if...else if...else之后的语句。

if-else选择结构总结: 1.需要多次判断的情况下,能够使用if-else if-else多选结构,就不要用if单选结构。 因为if-else if-else结构效率要高,只要其中一个条件为真,会立即跳出循环。 2.在if选择结构中,还可以嵌套选择结构或循环结构 3.if后的条件表达式,只能是结果为布尔型的表达式

switch多选结构

switch (表达式) { case 常量1: 语句序列; break; case 常量2: 语句序列; break; case 常量3: 语句序列; break; …… default: 默认语句; break; } switch语句会根据表达式的值从相匹配的case标签处开始执行,一直执行到break语句处或者 是switch语句的末尾。与任一case值不匹配,则进入default语句(如果存在default语句的情况)

switch总结:

1、switch()中的数据类型只能为:byte、short、int、char、String(JDK7)和枚举 2、case后面必须是常量,并且常量的类型应该和switch()中的数据类型保持一致。 并且不允许有重复的case值。 3、break用于跳出switch语句,根据需求我们我们可以省略break,如果没有break, 一旦进入case,导致后面的所有case都能进入, 直到遇到break或switch结束。(即会发生穿透) 4、default可以省略,但是最好不要省略,除非case能匹配所有的可能性。 case和default的是无序的,不过default只能最后执行或不执行。

if选择结构和switch多分支选择结构的比较:

switch:建议判断固定值的时候用。 if:建议判断区间或范围的时候用,对运算结果是boolean类型的表达式进行判断。 注意:用switch能做的,用if都能做,但反过来则不行。

最新回复(0)