流程控制的三种情况
程序的执行顺序是从上到下一次执行的,改变执行顺序有三种方法:方法的调用、选择结构和循环结构。
布尔表达式
布尔表达式的值与布尔类型一致,结果仅为true,false.
在Java中布尔逻辑有四种:
与(有假为假)
或(有真为真)
异或(真假相对则为真)
非(非真即假,非假即真)
逻辑运算符
与:
&& 逻辑与,也称为短路与。
逻辑与两侧仅为布尔值。
与运算全真为真,有假为假。
逻辑与若左边表达式为假,则整个表达式为假。
&位与
位与是一种数学表达式的计算方式,可以字符,计算表达式,按位与两边的代码都会执行。
若左边表达式为假,左边也会执行。
若是两个数字相与,一般会转化为二进制进行与运算,都为1才为1。
或:
||逻辑或,也成短路或。
逻辑或的逻辑与两侧仅为布尔值。
或运算有真则为真,全假为假。
逻辑或若左边表达式为真则全为真,不会执行右边的代码。
|按位或
位与是一种数学表达式的计算方式,可以字符,计算表达式,按位或两边的代码都会执行。
若左边表达式为假,左边也会执行。
若是两个数字相或,一般会转化为二进制进行与运算,有1为1。
^异或
异或是一种数学表达式的计算方式,可以字符,计算表达式,异或两边的代码都会执行。
一个为真一个为假时为真
非:
!逻辑非‘
逻辑非的两侧必须为布尔表达式。
表达式为真取非为假。
~位非
按位非一种数学表达式的计算方式,可以字符,计算表达式。
二进制数等于取反。
2.选择结构
选择执行
选择结构包括if语句、if else语句及switch语句
If语句:
如果表达式成立则执行语句块
单分支
If(条件表达式){
语句块;
}
表达式的值为布尔型
双分支
If else 语句:
如果表达式成立则执行语句块1,否则执行语句块2
If(表达式){
语句块1;
}else{
语句块2;
}
嵌套if
如果表达式1成立,再判定表达式2是否成立,若成立,则执行语句块。
If(表达式1){
If(表达式2){
语句块1;
}
}
多分支if:
如果表达式1不成立执行表达式2
If(表达式1){
}else if(表达式2){
}else if(表达式 3){
}
多分支 switch
能作为switch的变量值得范围:必须<=4个字节
能够作为变量类型的有:char,byte,short,int(jdk1.7以后,String 也可以作为数据类型)
Switch(变量){
Case 变量值:
语句块;
Break;
}
Break跳出整个switch;
Default:
Break;
Default为默认
3. 循环结构
用于解决重复性问题
循环结构分为三种(while、do while、for)
先验循环和后验循环
先验循环:
While循环
当条件成立时执行循环体
先判断条件,后执行
While(表达式){
循环体;
}
可用于未知次数循环
执行0次或多次
后验循环:
先执行 后判断条件
Do while 循环
做某件事直到
DO{
循环体;
}while(表达式)
至少执行一次
可以通过计数器的方式,找到一个临界点,退出循环。
For循环
常用于已知循环次数
For(表达式1;表达2;表达式4){
循环体3;
}
表达式1为初始化变量,仅执行一次
表达式2为布尔表达式,范围
表达式4为增量或减量
执行顺序为1234,234
4、break与continue
Break用于结束整个循环体;
Continue 用于结束本次循环