程序流程控制

流程控制

程序的执行,默认情况下是由上而下顺序执行,但在下面三种情况下会修改程序的流程:

  • 方法的调用:调用方法将导致控制流程离开当前方法,转移到被调用的方法。
  • 选择语句:Java中有两种做出选择的机制:if/else语句和switch语句。三目运算符也可以用于选择,但是它通常只是if/else的一个简写版本。
  • 循环语句Java中有三种循环语句:for循环、while循环、do/while循环。

布尔逻辑

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

  • 和:只有在组合表达式的每个部分都为真的时,组合表达式才会为真。
  • 或:只要一个组合表达式中有一个部分为真,组合表达式就会为真。
  • 异或:如果一个组合表达式中有一个部分为真,而另一个部分为假,那么组合表达式就为真。同时为真,或者同时为假,都是假
  • 非:对一个布尔表达式取反。

运算符

运算符语法
逻辑与(和)&&
按位与(和&
逻辑或这里写图片描述
按位或这里写图片描述
异或^
逻辑非!
按位非~

和(&& &)

运算符两侧的表达式都为真,组合表达式才能为真。

  • 按位与(&)

    • 按位与是一种数学计算方式,两侧可放置数值,字符,也可放置能够得到数值的计算表达式,还可放置布尔表达式。
    • 按位与表达式两边的代码,都会执行。
  • 逻辑与(&&)

    • 逻辑与两侧的表达式必须是布尔表达式。
    • 逻辑和,又被称为“短路和”,当第一个表达式为false时,第二个表达式将不会执行。

或(|| |)

运算符两侧的表达式只要存在一个是真,则组合表达式就为真。

  • 按位或(|)
    • 按位与是一种数学计算方式,两侧可放置数值,字符,也可放置能够得到数值的计算表达式,还可放置布尔表达式。
    • 按位与表达式两边的代码,都会执行。
  • 逻辑或(||)
    • 逻辑或两侧的表达式必须是布尔表达式。
    • 逻辑或,又被称为“短路或”,当第一个表达式为true时,
      第二个表达式将不会执行。

异或(^)

一组表达式中,部分为真则为真,全真、全假则都为假。异或运算符,两侧可以是数值,字符,计算表达式,布尔表达式。异或运算符我们平时很少用,业界主要用来对

伪随机字节和要加密的字节进行异或运算。

非(~ !)

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

选择语句

if语句

单分支if语句:
这里写图片描述
:其中条件表达式为布尔表达式。

双分支if语句

这里写图片描述

多分支if语句

这里写图片描述

swith语句

Swith语句也为多分支语句。

能作为swith–case中的变量值的取值范围:必须不大于4个字节。
能够作为变量类型的有:char,byte,short,int,(jdk1.7以后,还允许string来作为变量类型)。

循环语句

Java语言同样继承了C语言的while循环、do/while循环和for循环语句,其中while循环和for循环为先验循环,do—while循环为后验循环。

while循环

while循环是一种允许重复执行某项任务的控制结构,其语法形式为:
这里写图片描述

当程序流程执行到一个while循环时,首先检测布尔表达式。如果该布尔表达式为true,就执行循环体内的语句。控制流程然后又回到布尔表达式,再次检测。如果表达式还是为true,就再次执行循环体内的语句。这种处理过程一直重复,直到布尔表达式为false为止。

do…while循环

do/while循环与while类似,不同的是do/while循环至少要执行一次。其语法形式为:

这里写图片描述

我们可以注意到布尔表达式出现在循环的尾部,所以循环中的语句在布尔表达式检测之前就执行了一次。如果布尔表达式为true,控制流程就跳回,再次执行循环体中的语句。这个过程一直重复到布尔表达式为false。

跳转语句

break语句

break关键字可以用于任何循环控制结构,从而使循环立即终止。当执行流程遇到break语句时,不管循环计算器或者布尔表达式的值是什么,控制流程都会跳到循环后的下一条语句。

continue语句

continue关键字可以用在任何循环控制结构中,它将导致循环立即跳到循环的下一个迭代中。

在for循环中,continue关键字将导致控制流程立即跳到更新语句。


这里写图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值