从0开始学Java,打卡第2天(20输出式学习计划)-7程序流程控制

顺序结构:
程序从上到下逐行地执行,中间没有任何判断和跳转。

分支结构:
根据条件,选择性地执行某段代码。
有if…else和switch两种分支语句。
if…else:
执行if-else语句时,一定会选择其中一个路径执行,而且也仅会选择一条路径。
1.条件判断之间可以嵌套
2.①如果多个条件之间是”互斥“关系,多个条件语句上下顺序是自由的。
②如果多个条件之间存在”包含“关系,要求范围小的写在范围大的上面。
说明:如果if-else if-else条件的执行语句块{}只有一条语句的话,那么这一堆{}可以省略

三种格式:
1.
if(true){
执行代码块;
}
2.
if(条件表达式){
执行代码块;
}else{
执行代码块;
}
3.
if(条件表达式){
执行代码块;
}else if(条件表达式){
执行代码块;
}

else{
执行代码块;
}

switch语句:
1.根据变量的值,一旦满足case条件,就执行case的相应语句。如果没有break或者已经到结尾的话,会继续执行其下的case语句。
2.default:是可选的,而且位置是灵活的。
3.变量可以是哪些类型:char byte short int 枚举 String(jdk1.7)
4. case条件:其中条件只能是变量的值,不能是取值范围!
说明:当多个case语句处理的语句块一致时,可以统一来书写。
switch(变量){
case 常量1:
语句1;
break;
case 常量2:
语句2;
break;

case 常量N;
语句N;
break;
default:
语句;
break;
}

if和switch语句很像,具体什么场景下,应用哪个语句呢?
如果判断的具体数值不多,而且符合byte、short、int、char这四种类型。虽然两个语句都可以使用,建议使用switch语句。因为效率稍高。
其他情况:对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广。

循环结构
在循环条件满足的情况下,反复执行特定代码的功能

循环语句的四个组成部分:
初始化部分
循环条件部分
循环体部分
迭代部分

循环语句分类
for循环
while循环
do/while循环
注:JDK1.5提供了foreach循环,方便的遍历集合、数组元素。

for循环结构:
1.格式:
①初始化条件
②循环条件
③迭代条件
④循环体
for(①;②;③){

}
2.执行过程:①-②-④-③-。。。-④-③-②
直至循环条件不满足,退出当前的循环

while循环结构:
1.格式:
①初始化条件
②循环条件
③迭代条件
④循环体

while(②){
④;
③;
}
2.执行过程:①-②-④-③-。。。-④-③-②

for循环与while可以相互转换。区别是for循环的初始化条件写在里面的,while循环的初始化条件写在外面的。

do/while循环结构:
1.格式:
①初始化条件
②循环条件
③迭代条件
④循环体

do{
④;
③;
}while(②);
2.执行过程:①-④-③–②-。。。-④-③-②

2.do-while与while的区别:do-while循环至少会执行一次!

无限循环:
for(;😉{
}
while(true){
}
说明:一般情况下,在无限循环内部要有程序终止的语句,使用break实现。若没有,那就是死循环!

嵌套循环:
将一个循环放在另一个循环体内,就形成了嵌套循环。其中,for,while,do…while均可以作为外层循环和内层循环。
实质上,嵌套循环就是把内层循环当成外层循环的循环体。当只有内层循环的循环条件为false时,才会完全跳出内层循环,才可结束外层的当次循环,开始下一次的循环。
设外层循环次数为m次,内层为n次,则内层循环体实际上需要执行m*n=mn次。
for(;😉{
for(;😉{
}
}
while(){
for(;😉{
}
}

break:使用在switch-case中或者循环中(if-else中没用的)
如果使用在循环中,表示:结束”当前“循环

continue:使用在循环结构中
表示:结束”当次“循环,除这次还继续执行

加上"label:"标签后:
break label:结束外层循环
continue label:结束当次外层循环(外层循环中的内存循环体后面的语句不再执行)

在break和continue语句之后不能添加其他语句,因为永远不可能被执行。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值