JAVAEE学习day03,基本的流程控制
有问题请留言
1.流程控制语句分类
1)顺序控制语句
2)选择结构语句
if...
if...else...
if...else if... else...
for...
switch...
while...
do...while...
2.顺序结构如何执行
从上到下,从左到右
3.if语句三种执行流程
/*
if...语句
if(关系表达式){
语句体;
}
其他语句
首先判断关系表达式结果true或者false
如果是true就执行语句体
如果是false就不执行语句体
注意:如果不写大括号,if后边紧挨着的第一句才是if的语句体
*/ /*
if...else...语句
if(关系表达式){
语句体1;
}else{
语句体2;
}
首先判断关系表达式结果为true还是false
如果是true就执行语句体1
如果是false就执行语句体2
*/ /*
if..else if... else...语句
if(关系表达式1){
语句体1;
}else if(关系表达式2){
语句体2;
}...{
语句体n;
}else{
语句体n+1;
}
判断语句体1结果,true执行语句体1,false判断关系表达式2
表达式2结果为true执行语句体2,false判断下一个关系表达式
如果所有关系表达式均为false,执行语句体n
*/
4.if...else和三元运算符的区别
三元运算符的弊端也是必须要有结果,没有结果的只好用if else
5.switch语句执行流程及case穿透特性
/*
switch(表达式){
case 常量1:
语句体1;
break; case 常量2:
语句体2;
break; ...... default:
语句体n+1;
break;
} 首先计算得出表达式结果
依次比较case,如果值对应就会执行相应的语句,遇到break结束
如果是所有值均不匹配,执行default中的语句体n+1
*/
/* 注意:case穿透 如果在语句体后不加break,在执行完第一条语句之后会立即执行该语句的后的所有语句 直到遇到break或者switch语句执行结束 */
6.switch语句可以接收的数据类型
byte, short, int, char, enum(枚举), J字符串.
7.if和switch的区别
swich适合使用在固定值,不能进行逻辑判断 而if适合使用逻辑判断,且里面的内容多样,可以是字符串,数值等等。。。
8.for循环执行流程
/*
for(初始化表达式①;?布尔表达式②;?步进表达式④){
循环体③;
}
执行流程 执行顺序:①②③④>②③④>②③④…②不满足为止。
①负责完成循环变量初始化
②负责判断是否满足循环条件,不满足则跳出循环
③具体执行的语句
④循环后,循环条件所涉及变量的变化情况
*/
9.while循环的执行流程
/*
初始化表达式①
while(布尔表达式②){
循环体③ 步进表达式④
}
执行顺序:①②③④>②③④>②③④…②不满足为止。
①负责完成循环变量初始化。
②负责判断是否满足循环条件,不满足则跳出循环。
③具体执行的语句。
④循环后,循环变量的变化情况
*/
10.do...while循环执行的执行流程
/*
初始化表达式①
do{
循环体③ 步进表达式④
}while(布尔表达式②);
执行顺序:①③④>②③④>②③④…②不满足为止。
①负责完成循环变量初始化。
②负责判断是否满足循环条件,不满足则跳出循环。
③具体执行的语句
④循环后,循环变量的变化情况 注意:无条件执行一次
*/
11.for循环,while循环和do...while循环的区别
三种循环是可以替换的,但是三种循环也有一定的差异:
for循环适用于知道范围的情况(或知道循环次数的情况),当循环次数(或范围)不确定时用while循环或do......while循环。
while循环和do.......循环,当第一次进入循环就不满足条件时,while循环不做,do......while执行一次。其他情况输出结果是一样的。
12.死循环的两种写法
while (true){}
for(;;){}
13.break的概念及使用场景
终止switch或者循环
break只有在switch或者循环中使用
14.扩展:嵌套for循环执行流程
嵌套循环执行流程:
for(初始化表达式①;循环条件②;步进表达式⑦){
for(初始化表达式③;循环条件④;步进表达式⑥){
执行语句⑤;
}
}
执行顺序:①②③④⑤⑥>④⑤⑥>⑦②③④⑤⑥>④⑤⑥ 外循环一次,内循环多次
JAVAEE学习day03,基本的流程控制的更多相关文章
- Java学习之路:流程控制
2022-10-11 10:58:41 前言 本文开始流程控制方面的学习,主要包括用户交互和流程控制语句,适合新手学习. 1 用户交互Scanner 1.1 Scanner对象 Java提供了一个可以 ...
- Python学习(三)流程控制
Python流程控制 本章介绍 python 的基础流程控制.包括 if 条件语句.for 循环 和 while 循环语句: continue 及 break 的用法等. 基本用法与 C 和 Java ...
- python学习第七天流程控制循环while和循环for区别
流程控制循环是任何编程语言都有一种循环结构,在python while 和break continue 搭配使用,还一种while ....else ......,for循环有序列表和字符串 whil ...
- 吴裕雄--天生自然ShellX学习笔记:Shell 流程控制
和Java.PHP等语言不一样,sh的流程控制不可为空,如(以下为PHP流程控制写法): <?php if (isset($_GET["q"])) { search(q); ...
- 【疯狂Java讲义学习笔记】【流程控制与数组】
[学习笔记]1.switch语句后的expression表达式的数据类型只能是byte.short.char.int四个整数类型.String(Java 7后才支持)和枚举类型. 2.数组的长度不可变 ...
- 大数据学习--day03(运算符、流程控制语句)
运算符.流程控制语句 自增自减容易出错的地方: 扩展的赋值运算符 a+=b 等同于 a = a+b; 扩展的赋值运算符 隐含了一个类型的强制转换 & && 有何区别 & ...
- java===java基础学习(6)---流程控制,for,if,switch,continue,break
注意点: for循环的用法和python截然不同,注意格式 switch~,switch对应的case每当执行完毕都要break,由于基本不怎么用switch,所以作为了解. 中断流程控制语句,请考虑 ...
- python学习笔记二:流程控制
一.if else: #!/usr/bin/python x = int(raw_input('please input:')) if x >= 90: if x >= 95: print ...
- 【原创】go语言学习(四)流程控制
目录: 1.if else语句块 2.for语句 3.switch语句 if else语句块 1.基本语法 if condition { //do something } if statement; ...
随机推荐
- jquery框架概览(一)
参照jQuery 2.0.3版本(http://files.cnblogs.com/files/snoy/jquery-2.0.3.js")来进行的源码分析 从代码的最外层可以看到是一个II ...
- deeplearning.ai 序列模型 Week 2 NLP & Word Embeddings
1. Word representation One-hot representation的缺点:把每个单词独立对待,导致对相关词的泛化能力不强.比如训练出“I want a glass of ora ...
- mac android sdk manager 无法更新(被墙)
http://www.androiddevtools.cn/ 一句话,相见恨晚!! 想把以前的旧安卓项目拿到MAC上 环境就卡住了,以前的包是4.4的,想试试5.0的,更新不动 Android Too ...
- Eclipse安装tomcat插件
安装插件:Pivotal tc Server Integration for Eclipse右击server可以定位到web项目部署的目录http://marketplace.eclipse.org/ ...
- [洛谷P4782] [模板] 2-SAT 问题
NOIp后第一篇题解. NOIp我考的很凉啊...... 题目传送门 之前讲过怎么判断2-SAT是否存在解. 至于如何构造一组解: 我们想到对tarjan缩点后的图进行拓扑排序. 那么对于代表0状态的 ...
- LG_2286_[HNOI2004]宠物收养场
题目描述 凡凡开了一间宠物收养场.收养场提供两种服务:收养被主人遗弃的宠物和让新的主人领养这些宠物. 每个领养者都希望领养到自己满意的宠物,凡凡根据领养者的要求通过他自己发明的一个特殊的公式,得出该领 ...
- [SDOI2008] 洞穴勘测 (LCT模板)
bzoj 2049 传送门 洛谷P2147 传送门 这个大佬的LCT详解超级棒的! Link-Cut Tree的基本思路是用splay的森林维护一条条树链. splay的森林,顾名思义,就是若干spl ...
- 初识Mybatis之工程搭建
简介:MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以使用简单的 ...
- 全平台Markdown笔记软件——Notable
简介 The markdown-based note-taking app that doesn't suck. 一款简介.跨平台的本地笔记软件,github地址:https://github.com ...
- 在Linux上显示正在运行的进程的线程ID
在Linux上显示正在运行的进程的线程ID 在上Linux," ps -T"可以显示正在运行的进程的线程信息: # ps -T 2739 PID SPID TTY STAT TIM ...