选择结构内容

什么是流程控制?
流程控制用来控制程序中各语句的执行顺序。
在这里插入图片描述在这里插入图片描述
流程图
逐步解决指定问题的步骤和方法的一种图形化表示方法
请添加图片描述
if分支结构
if选择结构是根据条件判断结果选择不同的处理。
//结果必须是布尔值

if(条件){
	//代码块
	//条件语句的结果为true的时候能走到这,否则会跳过
}

使用复杂条件的if选择结构
使用if - else选择结构
if - else 结构:多重判断(对于多个区间判断优化)
从上到下执行 , 只要有一个对, 就结束执行。

if(条件){
	//代码块1
}else{
	//代码块2
}

注意点
只有一条语句时,建议不省略{ }
如果省略if结构的大括号,默认if结构的下一行是if的范围,有且只有那一行。请添加图片描述
什么是多重if选择结构?
请添加图片描述

if(成绩 >= 80){
	//代码块1
}else if(成绩 >=60){
	//代码块2
}else{
	//代码块3
}

为什么使用多重if选择结构?

  1. 单个if选择结构无法完成
  2. 多个if选择结构麻烦且效率低
  3. 将成绩分成几个连续区间判断

多重if选择结构中各个条件的顺序可以任意排列吗?
使用多重if选择语句处理问题时需要注意顺序

嵌套if选择结构
请添加图片描述

if(条件1){
	if(条件2){
		代码块1
	}else{
		代码块2
	}
}else{
	代码块3
}

switch选择结构:

缺点:结构复杂,啰嗦
特点:条件为等值判断

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

注意点

  1. 必须是同类型
  2. break 表示中止
  3. switch(表达式),表达式必须是 int、short、byte、char、枚举类型、String。
  4. if可以表示范围 switch 只能做等值判断

常见错误
1.忘加 break,可能会导致接下来的全部执行
2.case 后的常量值不能相同
3.default块顺序可以变动,但要注意其执行顺序。
ps:通常,default块放在末尾,也可以省略。
default 可以放在第一位但是要加break。

switch 与多重 if
相同点:都是用来处理多分支条件的结构

不同点
switch选择结构:
只能处理等值条件判断的情况

多重if选择结构:
没有switch选择结构的限制,特别适合某个变量处于某个连续区间时的情况

总结:
if选择结构,包括以下形式:
基本if选择结构:可以处理单一或组合条件的情况
if-else选择结构:可以处理简单的条件分支情况
多重if选择结构:可以处理分段的条件分支情况
嵌套if选择结构:可以处理复杂的条件分支情况

switch选择结构:
多重分支并且条件判断是等值判断的情况

题外话
程序调试:
为编写程序过程中有时出现错误,但不好发现和定位错误,于是就要进行调
试,或者当程序结构越来越复杂时,需要专门的技术来发现和定位错误,就
要使用“程序调试”。
程序调试就是使用debug方式。
debug 方式
1.在代码左侧双击打断点
2.用debug的方式运行代码
3.单步执行,观察变量和程序运行的步骤
(step over 一步一步运行)

debug-debug Configurations-红色的x => 删除以前的debug过的程序。

产生随机数(0~9)的方法:
int random = (int)(Math.random()*10);

注意点

String str = null;
//System.out.println(str.equals("3"));//会报错 空指针异常
System.out.println("3".equals(str));

当String类型的变量值是空值时,如进行比对,可能会出现空值。

if语句不能定义在类里面,要定义在方法或main方法里。

----2021.07.24

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值