选择结构与分支结构整理与总结

选择结构与分支结构
  1. 基本if选择结构

    语法:

    ​ if(布尔表达式){

    ​ //代码块

    }

    执行流程:

    1. 对布尔表达式进行判断

      1. 结果为true,则先执行代码块,再执行后续代码
        3. 结果为false,则跳过代码块,直接执行后续代码块
  2. if else选择结构

    语法:

    ​ if(布尔表达式) {

    ​ //代码块1

    } else {

    ​ //代码块2

    }

    执行流程:

    1. 对布尔表达式进行判断
    2. 结果为true,则先执行代码块1,再退出整个结构,执行后续代码
    3. 结果为false,则先执行代码块2,再退出整个结构,执行后续代码
  3. 多重if选择结构

    语法:

    ​ if(布尔表达式1){

    ​ //代码块1

    }else if(布尔表达式) {

    ​ //代码块2

    }else if(布尔表达式) {

    ​ //代码块3

    }else {

    ​ //代码块4

    }

    执行流程:

    1. 表达式1为true,则执行代码块1,再退出整个结构
    2. 表达式2为true,则执行代码块2,再退出整个结构
    3. 表达式3为true,则执行代码块3,再退出整个结构
    4. 以上均为false,则执行代码块4,再退出整个结构

注意:相互排斥,有一个为true,其他均不再执行

​ 适用区间判断,但要保证条件顺序(从大到小,从小到大)

  1. 嵌套if选择结构

    语法:

    ​ if(外层表达式) {

    ​ if(内层表达式) {

    ​ //内层代码块1

    ​ } else {

    ​ //内层代码块2

    } else {

    ​ //外层代码块

    }

    执行流程:

    ​ 当外层条件满足时,再判断内层条件

    注意:

    ​ 一个选择结构中,可嵌套另一个选择结构

    ​ 嵌套格式正确的情况下,支持任意组合

  2. 分支结构

    语法:

    ​ switch(变量 | 表达式){

    ​ case 值1:

    ​ 逻辑代码1;

    ​ case 值2:

    ​ 逻辑代码2;

    ​ case 值n:

    ​ 逻辑代码n;

    ​ default:

    ​ 未满足时的逻辑代码

    }

可判断的类型:

​ byte、short、int、char、String(JDK7+)

执行流程:

​ 如果变量中的值等于值1,则执行逻辑代码1.

​ 如果变量中的值等于值2,则执行逻辑代码2.

​ 如果变量中的值等于值3,则执行逻辑代码3.

​ 如果变量中的值没有匹配的case值时,执行default中的逻辑代码.

注意:当匹配的case执行后,不会自动退出整个结构,而是继续向下执行

​ break关键字可在匹配的case执行后,跳出整个结构,适用等值判断

  1. 局部变量

    概念:声明在方法内部的变量,必须先赋值再使用。

    作用范围:定义行开始到所在的代码块结束

    注意:多个变量,在重合的作用范围内,不可出现重名(命名冲突)

  2. 总结

    1. 基本if选择结构:if(){}
    2. if else 选择结构:if() {} else{}
    3. 多重if选择结构:if() {} else if() {} else if() {} else{}
    4. 嵌套if选择结构:if() { if() {} }
    5. switch分支结构:switch(){}
    6. 局部变量:声明在方法内部的变量,必须先赋值再使用

Scanner 控制台输入

​ 语法:导包 import 包名.类名; 在声明包语句和声明类之间

使用流程:

​ 导入:import java.util.Scanner;

​ 声明:Scanner input = new Scanner(System.in);

在这里插入图片描述

作业
2.(运算符)有如下代码:
   
    int a = 5;
	int b = (a++) + (--a) + (++a);
	执行完之后,b的结果?
        
     答:执行流程:
        		 第一行代码:5的值赋值给a;
				第二行代码:等号右边:
                                 (a++):a首先赋值为5参与运算后,a自增1变为6;
						        (--a): a为6首先自减1变为5,参与运算;
                                  (++a):a为5参与运算,再自增1.
                          b = 5 + 5 + 6 = 16
                                      
3.(基本类型的运算)一家商场在举行打折促销.......
                                      
   答:
      I.由于price为short类型,乘以8除以10之后为int类型不能够赋值给short类型的realPrice                               
      II. 如果直接进行整除除法计算的话,结果为整除的商,应改为:double realPrice = price * 0.8;  

4.(表达式)int n,请用表达式表示n的个位数,十位数,百位数
    
    答:
    	int a = n % 10;        //n 的个位数
		int b = n / 10 % 10;   //n 的十位数
		int c = n / 100;       //n 是百位数

5.(表达式)inta,b;请用表达式判断b是不是a的因子
    
    答:
    	 a % b ;//如果a % b为0,说明b是a的因子,反之,则不是

6.if语句)某项查询执行之后,n条结果,单页显示m条记录,第i页显示第几条到第几条?
    
    答:
    	第i页显示第(i-1)*m+1条到第(i<=n/m)?m * i:n条
    	

7.(if语句)

在这里插入图片描述

8.(switch语句)

在这里插入图片描述

9.(if语句)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值