java学习--流程控制语句


前言

前面已经学习了java的基本语法,现在学习一下,java的流程控制语句


一、顺序结构

顺序结构是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。

执行流程图:

 

二、分支结构

1.if语句格式1

格式:

if (关系表达式) {
    语句体;    
}

执行流程
    ①首先计算关系表达式的值
    ②如果关系表达式的值为true就执行语句体
    ③如果关系表达式的值为false就不执行语句体
    ④继续执行后面的语句内容

流程图:

 

2.if语句格式2

格式:

if (关系表达式) {
    语句体1;    
} else {
    语句体2;    
}

执行流程:

①首先计算关系表达式的值
②如果关系表达式的值为true就执行语句体1
③如果关系表达式的值为false就执行语句体2
④继续执行后面的语句内容

流程图:

3.if语句格式3

格式:

if (关系表达式1) {
    语句体1;    
} else if (关系表达式2) {
    语句体2;    


else {
    语句体n+1;
}

执行流程
    ①首先计算关系表达式1的值
    ②如果值为true就执行语句体1;如果值为false就计算关系表达式2的值
    ③如果值为true就执行语句体2;如果值为false就计算关系表达式3的值
    ④…
    ⑤如果没有任何关系表达式为true,就执行语句体n+1。

流程图:

 

4.switch语句格式

格式:

switch (表达式) {
    case 1:
        语句体1;
        break;
    case 2:
        语句体2;
        break;
    ...
    default:
        语句体n+1;
        break;
}

格式说明:
    表达式
        取值为:byte,short,int,char;jdk5以后可以是枚举,jdk7以后可以是String。
    case
        后面跟的是要与表达式比较的值。
    break
        表示中断,结束的意思,用来结束switch语句。
    default
        表示所有情况都不匹配的时候,执行该处的内容,和if语句中的else类似。

执行流程:
    首先计算出表达式的值。
    然后和case依次比较,一旦有对应的值,就执行相应的语句体,在执行中遇见break就结束。
    最终,如果没有case值与之对应,则致信default语句体部分,然后结束。

注意:
    在default部分的break是可以省略不写的。
    如果switch中得case,没有对应break的话,则会出现case穿透的现象。
    case穿透现象是指在运行完语句体之后,没有break,他会不判断下一个case,直接执行下面的语句体,直到遇见break停止,或者走完整个switch语句结束。

三、循环结构

循环结构的特征1.重复做某件事情.2具有明确的开始和停止标志。

1.循环结构的组成

初始化语句:    用于表示循环开启时的起始状态,简单说就是循环开始的时候什么样。
条件判断语句:用于表示循环反复执行的条件,简单说就是判断循环是否能一直执行下去。
循环体语句:    用于表示循环反复执行的内容,简单说就是循环反复执行的事情。
条件控制语句:用于表示循环执行中每次变化的内容,简单说就是控制循环是否能执行下去。

2.循环体对应的语法

初始化语句:    这里可以是一条或者多条语句,这些语句可以完成一些初始化操作
条件判断语句:这里使用一个结果值为boolean类型的表达式,这个表达式能决定是否执行循环体。例如:a<3
循环体语句:    这里可以是任意语句,这些语句将反复执行。
条件控制语句:这里通常是使用一条语句来改变变量的值,从而达到控制循环是否继续向下执行的效果。常见i++,i--这样的操作。

3.for循环语句

格式:

for (初始化语句;条件判断语句;条件控制语句) {
    循环体语句;
}

执行流程:
    ①执行初始化语句
    ②执行条件判断语句,看其结果是true还是false
    ​             如果是false,循环结束
    ​             如果是true,继续执行
    ③执行循环体语句
    ④执行条件控制语句
    ⑤回到②继续

4.while循环语句

格式:

初始化语句;
while (条件判断语句) {
    循环体语句;
    条件控制语句;
}

执行流程:
    ①执行初始化语句
    ②执行条件判断语句,看其结果是true还是false
    ​             如果是false,循环结束
    ​             如果是true,继续执行
    ③执行循环体语句
    ④执行条件控制语句
    ⑤回到②继续

5.do…while循环语句

格式:

初始化语句;
do {
    循环体语句;
    条件控制语句;
}while(条件判断语句);

执行流程:

① 执行初始化语句
② 执行循环体语句
③ 执行条件控制语句
④ 执行条件判断语句,看其结果是true还是false
如果是false,循环结束
如果是true,继续执行
⑤ 回到②继续

6.三种循环的区别

for循环和while循环先判断条件是否成立,然后决定是否执行循环体(先判断后执行)。
do...while循环先执行一次循环体,然后判断条件是否成立,是否继续执行循环体(先执行后判断)。

for循环与while循环的区别:
    条件控制语句所控制的自增变量,因为归属for循环的语法结构中,在for循环结束后,就不能再次被访问到了。
    条件控制语句所控制的自增变量,对于while循环来说不归属其语法结构中,在while循环结束后,该变量还可以继续使用。

7.死循环

for(;;){}

while(true){}

do {} while(true);

8.跳转控制语句

break
    用在循环中,基于条件控制,终止循环体内容的执行,也就是说结束当前的整个循环。

continue
    用在循环中,基于条件控制,跳过某次循环体内容的执行,继续下一次的执行
    注意 continue只能在循环中进行使用!

9.循环嵌套

在循环中继续定义循环。
整个内循环就相当于外循环的一个语句体。
内循环执行完成后外循环才会继续循环。
最终结论:外循环循环一次,内循环循环一圈。

四、Random

作用:可以生成一个随机数

使用步骤:
    1导包
        import java.util.Random;
    2创建对象
        Random r = new Random();
    3获取随机数
        int num = r.nextInt(10);
        注意:10代表的是一个范围,如果括号写10,产生的随机数就是0-9,括号写20,参数的随机数则是0-19。


总结


以上就是今天要讲的内容,本文仅仅简单介绍了流程控制语句,还是要仔细学习这部分内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值