Day03——流程控制

Day03——程序流程控制

1.定义

流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑块。

2.分类

三种基本流程结构:

  • 顺序结构
  • 分支结构
  • 循环结构

3.分支结构

if-else结构

  1. if语句三种格式:
if(条件表达式){
  执行代码块;
}
if(条件表达式){
  执行代码块1;
}else{
  执行代码块2;
}
if(条件表达式1){
  执行代码块1;
}else if(条件表达式2){
  执行代码块2;
}else{
  执行代码块3;
}
  1. if-else使用说明:

    • 条件表达式必须是布尔表达式布尔变量
    • if-else可以嵌套使用。
  2. 针对于条件表达式:

  • 如果多个条件表达式之间是互斥关系,则判断和执行语句声明顺序可换;
  • 如果多个条件表达式之间有交集关系,需要根据实际情况考虑清楚哪个结构声明在上面;
  • 如果多个条件表达式之间有包含关系,通常情况下需要将范围小的声明在范围大的上面。否则范围小的不会被执行。

switch-case结构

  1. 格式:
switch(表达式){
  case 常量1:
    语句1;
    break;
    
  case 常量2:
    语句1;
    break;

  default:
    语句n;
    break;
}
  1. 说明:
  • 根据switch表达式中的值,依次匹配各个case中的常量,一旦匹配成功,则进入到相应的case结构中,调用其执行语句并继续向下执行,直到遇到break关键字结束;
  • switch结构中的表达式可以是byte、short、char、int、枚举类型、string类型
  • case常量只可以声明常量,不可以声明范围;
  • break关键字可选;
  • default结构可选,且位置灵活。

4.循环结构

for循环

  1. 结构
for(初始化条件;循环条件;迭代条件){
  	循环体;
}
  • 循环条件为布尔类型

while循环

  1. 结构
初始化部分;
while(循环条件){
  循环体;
  迭代部分;
}
  • 循环条件为布尔类型

do-while循环

  1. 结构
初始化部分;
do{
  循环体;
  迭代条件;
}while(循环条件);
  • 循环条件为布尔类型
  • do-while循环至少执行一次循环体

如何选择循环结构

  1. 遍历有明显的循环次数需求,使用for循环。
  2. 遍历没有明显的循环次数需求,使用while循环。
  3. 如果循环体语句块至少执行一次,可以考虑使用do-while循环。
  4. 本质上三种循环之间完全可以相互转换,都能实现循环的功能。

无限循环格式

  • while(true)
  • for( ; ; )
  1. 需要根据循环体内部的条件来控制循环的结束。
  2. 开发中,有时并不确定需要循环多少次,需要根据循环体内某些条件,来控制循环的结束(使用break)。
  3. 如果循环结构不能终止,则构成了死循环。

5.嵌套循环(多重循环)

  • 将一个循环放在另一个循环体内,就形成了嵌套循环。其中, for ,while ,do…while均可以作为外层循环或内层循环。

  • 实质上,嵌套循环就是把内层循环当成外层循环的循环体。当只有内层循环的循环条件为false时,才会完全跳出内层循环,才可结束外层的当次循环,开始下一次的循环。

  • 设外层循环次数为m次,内层为n次,则内层循环体实际上需要执行m*n次。

  • 外层循环控制行数,内存循环控制列数。

public class p53_test_2 {
    public static void main(String[] args) {
        for (int i = 1; i <= 9; i++) {
            for (int j = 1; j <= i; j++) {
                System.out.print(i + "*" + j + "=" +(i*j)+" ");
            }
            System.out.println();
        }
    }
}

6.break关键字

  • 用于终止某个语句块的执行。
  • 出现在多层嵌套的语句块中时,可以通过标签label指明要终止的是哪一层语句块
  • 只能用于switch语句循环语句中。

7.continue关键字

  • 只能使用在循环结构中。
  • 用于跳过其所在循环语句块的一次执行,继续下一次循环
  • 出现在多层嵌套的循环语句体中时,可以通过标签label指明要跳过的是哪一层循环

8.return关键字

  • 并非专门用于结束循环的,它的功能是结束一个方法。 当一个方法执行到一个return语句时,这个方法将被结束。

  • 与break和continue不同的是,return直接结束整个方法,不管这个return处于多少层循环之内。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值