day03 daily homework by Oli. 流程控制

1. 顺序结构

1.1 开始——步骤A——步骤B——步骤C——结束

2. 选择结构

2.1 判断语句1——单if语句
if(关系表达式){
语句体;
}

*判断关系表达式为true还是false,如果true执行语句体;如果false则不执行语句体,直接结束。

2.2 判断语句2——if…else(2选1)
if(关系表达式){
语句体1;
} else {
语句体2;
}

  • 首先判断关系表达式看其结果是true还是false;
  • true的话执行语句体1, false的话执行语句体2;
  • 最后结束

2.3 判断语句3——if…else if…else(多选1)
if(判断条件1){
语句体1;
} else if (判断条件2) {
语句体2;
}

} else if (判断条件n) {
语句体n;
} else {
语句体n+1;
}
*首先判断条件1是true还是false,如果true,执行语句体1,然后直接结束;如果是false, 看判断条件2,如果是true 直接执行语句体2,然后结束,如果是false,看执行条件3,重复。。
最后的else会处理不符合所有条件的情况

例子

多选1的情况

三元运算符和标准的if-else对比
题目:取两个数字当中的最大值

public class CompareTest{
public static void main(string[] args){
int a=10;
int b=20;

	//首先使用三元运算符
	int max = a>b ? a : b ;
	System.out.println (“最大值:”+max);
   //使用今天的if-else
   int max;
   if (a>b){
     max =a;
    }else{
    max =b; 
    }
    System.out.println (“最大值:”+max);	

}
}

3.1 选择语句——switch

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

default:
语句体n+1;
break;
}

*表达式 就是被检测量;
*其次,和case依次比较,一旦有对应的值,就执行相应的语句,在执行的过程中,遇到break就会结束。
*default和else作用类似,没有满足的case就直接走default.
*case后面是常量,要注意

注意事项:1. 多个case后面的数值****不可以重复
2. switch后面小括号只能是下面数据类型
(byte, short, char, int) String字符串,enum枚举
3. 前后顺序可以颠倒,break可以省略,匹配了哪一个case就从哪一个位置向下执行,直到遇到了break。

3. 循环结构

基本组成部分:1. 初始化语句,在循环开始最初执行,只做一次
2. 条件判断:成立,循环继续,不成立,退出
3. 循环体:重复要做的事情内容
4. 步进语句;每次循环后都要进行的扫尾工作
3.1 for 循环
格式: for(初始化表达式1;布尔表达式2;步进表达式4){
循环体3;
}
流程:1234—234—234…2不满足为止。

3.2 while循环
标准格式:while(条件判断){
循环体
}
扩展格式:
初始化语句1;
while(条件判断2){
循环体3
步进表达式4
}
流程:1234—234—234…2不满足为止。

3.3 do-while循环
标准格式:
do {
循环体
} while (条件判断); //最后有个分号

扩展格式:
初始化语句1
do{
循环体3
步进表达式4
}while(布尔表达式2); //最后有分号

流程:1342-342-342…2不满足为止。

*******三种循环的区别

  1. 如果条件判断从来没满足过,那么for循环和while循环会执行0次,但是do-while至少会执行一次
  2. for循环的变量在小括中定义,只有循环内部才可以使用,while和do-while循环出来以后仍可以使用(变量作用域的问题)

***break 关键字的用法
3. 可以用在switch语句当中,一旦执行,整个switch语句立刻结束
4. 还可以用在循环语句中,一旦执行,整个循环语句立刻结束,打断循环。
5. 关于循环的选择,凡是次数确定的场景多有for循环,否则用while循环。

***continue 的用法
6. 一旦执行,立刻跳过当前次循环剩余内容,马上开始下一次循环。

例子:
continue例子
3.4 嵌套循环
例子
循环套循环
练习:
题目 求出1到100之间的偶数和?

public class HundredEvenSum1{
	public static void main(String [] args){
  		 int sum = 0 // 定义在外面
   
   for(int i=1;i<=100;i++){
    	if (i%2 ==0){
            sum += i;
			}
		}
		System.out.println("结果是:" + sum);
	}
}
// while 循环去实现

public class HundredEvenSum2{
	public static void main(String [] args){
	int sum = 0;
	int i =1;
		while (i<=100){
			if (i%2 == 0){
			sum +=i;
			}
		}
		System.out.println("总和为:" +sum)
	}
}	

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值