Java语言程序流程控制

java 逻辑运算自定义表达式解析_while循环

布尔逻辑

布尔逻辑指将两到多个布尔表达式组合为单个布尔表达式。在组合布尔表达式时,有四种类型的逻辑:

和。只有在组合表达式的每个部分都为真的时,组合表达式才会为真。

或。只要一个组合表达式中有一个部分为真,组合表达式就会为真。

异或。如果一个组合表达式中有一个部分为真,而另一个部分为假,那么组合表达式就为真。同时为真,或者同时为假,都是假

非。对一个布尔表达式取反。

Java中可用的逻辑运算符:

java 逻辑运算自定义表达式解析_while循环_02

异或
异或运算符,两侧还是可以放数值、字符、计算表达式、布尔表达式
一般我们自己有的比较少,业界主要对密码加密过程,会使用到异或

按位非,可以两侧还是可以数值,字符,计算表达式
按位非按位非(~)不能放布尔表达式,逻辑非(!)只能放布尔表达式

**选择语句-if**

单分支

If(条件表达式){

语句块

}

流程图:

java 逻辑运算自定义表达式解析_布尔表达式_03

双分支

If(条件表达式){

语句块1

}else{

语句块2

}

流程图:

java 逻辑运算自定义表达式解析_布尔表达式_04

多分支

If(条件表达式1){语句块1}

else if(条件表达式2){语句块2}

else if(条件表达式3){语句块3}

……

else if(条件表达式m-1){语句块m-1}

else{语句块m}

流程图:

java 逻辑运算自定义表达式解析_java 逻辑运算自定义表达式解析_05

If一定是第一个执行的表达式,而且必须执行

**选择语句switch**

语句格式
switch(算术表达式){

case 常量表达式1:语句块1
        break;
case 常量表达式2:语句块2
        break;
……
default:语句块m
        break;

特点:
能作为switch—case中的变量值的取值范围:必须<=4个字节
能够作为变量的类型有:char, byte, short, int(jdk1.7以后,还允许String来作为变量类型)
每一个case的常量表达式值必须互不相同,否则就会出现相互矛盾的现象
case和default的放置,没有固定的顺序,但通常default放置在最后

**循环结构**
 **while循环**
 while循环就是先验循环
 它可以执行0次,也可以执行更多次,但是如果开始的验证条件不为真,则永远不会开启循环
 循环格式

while(布尔表达式){

循环体

}

流程图

java 逻辑运算自定义表达式解析_布尔表达式_06

**do-while循环**

do-while循环是后验循环

它可以执行1次,也可以执行更多次。无论循环后面的判断部分的条件是否为真,循环代码至少都要执行一次,然后在判断是否满足继续循环的条件。

循环格式:

do{

循环体

}while(布尔表达式);

流程图:

java 逻辑运算自定义表达式解析_布尔表达式_07

whilez和do-while循环都是在找循环的临界点, 以便跳出循环

**for循环**
for循环是循环控制结构中,使用最为广泛的一种循环控制语句,它也是一种先验循环。
 循环格式:
 for(表达式1;表达式2;表达式3){
循环体

}

流程图:

java 逻辑运算自定义表达式解析_流程图_08

continue和break

break
用break语句可以跳出switch语句体,程序继续执行switch语句体下面的程序,在循环结构中,也可以使用break语句跳出本层循环体,从而提交结束层循环
continue
continue的作用是结束本次循环(即跳过本次循环中余下尚未执行的语句),接着再一次进行循环条件的判断