Java编程思想之四控制执行流程
程序必须再执行过程中控制它的世界,并做出选择。在Java中,你要使用执行控制语句来做出选择。
4.1true和false
所有条件语句都利用条件表达式的真或假来决定执行路径。
Java不允许使用数字作为布尔值来用
4.2 if-else
if-else语句是控制程序流程的最基本的形式。else是可选的。
4.3 迭代
while、do-while和for用来控制循环,有时将它们划分位迭代语句。语句会重复执行,知道控制作用的布尔表达式得到假结果。
4.3.1 do-while
while、do-while的唯一区别就是do-while至少会执行一次。
4.3.2 for
for循环可能是最经常使用的迭代形式,这种在第一次迭代之前要进行初始化。
for(初始化表达式;布尔表达式;步进)
4.3.3 逗号操作符
Java里唯一用到逗号操作符的地方就是for循环的控制表达式。在控制表达式的初始化和步进控制部分,可以使用一系列由逗号分隔的语句。而且这些语句会独立运行。
4.4 Foreach语法
Foreach不必创建int变量去对由访问项构成的序列进行计算,foreach将自动产生每一项。
4.5 return
两个用途:
- 指定一个方法返回什么值
- 它会导致当前方法退出
4.6 break和continue
在任何迭代语句主体部分,都可以用break和continue控制循环流程。
break用于强行退出循环,不执行剩下的语句。continue则停止执行当前的迭代,然后退出循环起始处,开始下一次迭代。
标签
Java中标签和goto机制类似
标签其作用的唯一地方就是刚好在迭代语句之前。"刚好之前"的意思是在便签和迭代之间置入任何语句都不好。而在迭代之前设置标签的唯一理由是:我们希望在其中嵌套另一个迭代或者一个开关。这是由于break和continue通常中断当前循环,如果和标签一起使用,它们就是中断循环,直到标签的所在地方。
label1:
outer-itertion{
inner-iteration{
break://中断内部迭代,回到外部迭代
continue;//执行点移到内部迭代起始点
continue label1;//中断内部迭代和外部迭代,直接转到label1处,继续执行迭代
break label1;//中断所有迭代,回到label1处,并且不在进入迭代
}
}
Java里使用标签的唯一理由是因为有嵌套循环存在,而且想从多成嵌套中break或continue 。
4.8 switch
switch有时也被划分为选择语句,使用和C#里面一致。
需要注意一点,switch选择因子必须是int或char。如果是浮点或者字符串作为选择因子,那么swich语句里不会工作。
Java编程思想之四控制执行流程的更多相关文章
- 《Java基础复习》-控制执行流程
最近任务太多了,肝哭我了,boom 参考书目:Thinking in Java <Java基础复习>-控制执行流程 Java使用了C的所有流程控制语句 涉及关键字:if-else.whil ...
- 《Java编程思想》学习笔记(二)——类加载及执行顺序
<Java编程思想>学习笔记(二)--类加载及执行顺序 (这是很久之前写的,保存在印象笔记上,今天写在博客上.) 今天看Java编程思想,看到这样一道代码 //: OrderOfIniti ...
- java控制执行流程
控制执行流程 欢迎转载,转载烦请注明出处,谢谢. https://www.cnblogs.com/sx-wuyj/p/11177257.html java当中涉及到的关键字包括if-else.whil ...
- Java编程思想(前十章)
Java编程思想 有C++编程基础的条件下, 前10章可以快速过一下,都是基本语法,不需要花太多时间. 着重中后段的一些章节,类型信息.泛型.容器.IO.并发等. 中文翻译版 阅读地址 对于一个架构师 ...
- 《Java编程思想第四版完整中文高清版.pdf》-笔记
D.2.1 安插自己的测试代码 插入下述“显式”计时代码,对程序进行评测: long start = System.currentTimeMillis(); // 要计时的运算代码放在这儿 long ...
- 《Java编程思想》阅读笔记一
Java编程思想 这是一个通过对<Java编程思想>(Think in java)第四版进行阅读同时对java内容查漏补缺的系列.一些基础的知识不会被罗列出来,这里只会列出一些程序员经常会 ...
- 24.JAVA编程思想——违例差错控制
24.JAVA编程思想--违例差错控制 Java 的基本原理就是"形式错误的代码不会执行". 与C++类似,捕获错误最理想的是在编译期间,最好在试图执行程序曾经.然而.并不是全部错 ...
- Java编程思想(第4版) 中文清晰PDF完整版
Java编程思想(第4版) 中文清晰PDF完整版 [日期:2014-08-11] 来源:Linux社区 作者:Linux [字体:大 中 小] <Java编程思想>这本书赢得了全 ...
- Java编程思想 第21章 并发
这是在2013年的笔记整理.现在重新拿出来,放在网上,重新总结下. 两种基本的线程实现方式 以及中断 package thread; /** * * @author zjf * @create_tim ...
随机推荐
- JS基础 —— call、apply 和 bind
函数的三个原型方法 作用:改变this指向 call MDN:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Glo ...
- vue动画理解,进入、离开、列表过度和路由切换。
vue的动画对于很多初学者,甚至对很多老鸟来说也是很费劲,不容易控制的. 这篇文章讲vue动画的理解.其实没那么难. 动画理解 一个元素从A状态变成B状态,如果这个过程通过某种方式反应在视图上了,那么 ...
- H3C 无线交换机和FIT AP的典型连接
- Mac原型动画设计软件Drama创建3D图层的注意事项,你知道吗?
Drama创建3D图层的注意事项:要跨层保留3D空间,可以使用组.它们具有保留子图层和嵌套组的3D空间的特殊功能. Drama支持通过在三维空间中定位和旋转2D图层来创建3D内容.要在3D空间中定位图 ...
- Centos7永久修改IP地址(NAT模式)
永久修改IP地址,即为设置静态的IP地址. 一.修改IP地址前需要准备的工作 1.虚拟机需要使用NAT的网络模式 虚拟机关机状态下,点击"编辑虚拟机设置",点击"网络适配 ...
- 终于有人把Elasticsearch原理讲透了!
终于有人把Elasticsearch原理讲透了! http://developer.51cto.com/art/201904/594615.htm 小史是一个非科班的程序员,虽然学的是电子专业,但是通 ...
- PAT 乙级 1005.继续(3n+1)猜想 C++/Java
1005 继续(3n+1)猜想 (25 分) 题目来源 卡拉兹(Callatz)猜想已经在1001中给出了描述.在这个题目里,情况稍微有些复杂. 当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记 ...
- httprunner学习18-多进程运行模式
前言 使用Locust进行性能测试时,当一台单机不足以模拟所需的用户数量的时候,可以使用主从模式,启动一个master节点,多个slave节点. 主从模式 loucsts 是httprunner 里面 ...
- Beta冲刺阶段博客集合
Beta冲刺阶段博客集合 课程名称:软件工程1916|W(福州大学) 团队名称: 云打印 作业要求: 项目Beta冲刺(团队) 作业目标:作业集合 团队队员 队员学号 队员姓名 个人博客地址 备注 2 ...
- discuz x3.3后台admin.php防止直接恶意访问
功能说明:admin.php是discuz默认的后台地址,正常情况下可以直接访问,为了防止某些恶意访问的情况,可以修改以下内容进行安全性能提升. 适用版本:Discuz!x1-x3.3 具体实施方案: ...